background image

Software Testing 

Software Testing 

By Marcin Starzomski :P

By Marcin Starzomski :P

background image

What is Testing

What is Testing

 ?

 ?

Testing is a process used to help 

Testing is a process used to help 

identify the correctness, 

identify the correctness, 

completeness and quality of 

completeness and quality of 

developed computer software. 

developed computer software. 

Testing is nothing but criticism or 

Testing is nothing but criticism or 

comparison, that is comparing the 

comparison, that is comparing the 

actual value with expected one. 

actual value with expected one. 

background image

S

S

software faults and 

software faults and 

S

S

oftware failures

oftware failures

failure - the software does not do 

failure - the software does not do 

what the user expects

what the user expects

faults - error in the correctness of 

faults - error in the correctness of 

the semantic of a computer program

the semantic of a computer program

background image

W

W

hite box

hite box

(

(

glass box

glass box

Testing

Testing

In white box or "glass box", testing 

In white box or "glass box", testing 

the test developer has access to the 

the test developer has access to the 

source code. They ensure that 

source code. They ensure that 

components used in the construction 

components used in the construction 

are functional to some degree.

are functional to some degree.

background image

B

B

lack box

lack box

 Testing

 Testing

In black box testing the test 

In black box testing the test 

engineer only accesses the software 

engineer only accesses the software 

through the same interfaces that the 

through the same interfaces that the 

customer or user would.

customer or user would.

background image

G

G

rey 

rey 

(G

(G

ray

ray

)

)

 

 

B

B

ox 

ox 

T

T

esting

esting

T

T

he typical grey box tester is 

he typical grey box tester is 

permitted to set up or manipulate the 

permitted to set up or manipulate the 

testing environment. It can also be 

testing environment. It can also be 

used of testers who know the internal 

used of testers who know the internal 

workings or algorithm of the 

workings or algorithm of the 

software under test and can write 

software under test and can write 

tests specifically for the anticipated 

tests specifically for the anticipated 

results.

results.

background image

ALFA

ALFA

 Testing Phase

 Testing Phase

I

I

n the first phase of alpha testing, 

n the first phase of alpha testing, 

developers test the software using 

developers test the software using 

white box techniques. Additional 

white box techniques. Additional 

inspection is then performed using 

inspection is then performed using 

black box or grey box techniques. 

black box or grey box techniques. 

background image

BETA Testing Phase

BETA Testing Phase

Versions of the software, known as beta-

Versions of the software, known as beta-

versions, are released to a limited 

versions, are released to a limited 

audience outside of the company. Testing 

audience outside of the company. Testing 

during the beta phase, informally called 

during the beta phase, informally called 

'beta testing, is generally constrained to 

'beta testing, is generally constrained to 

black box techniques although a core of 

black box techniques although a core of 

test engineers are likely to continue with 

test engineers are likely to continue with 

white box testing in parallel to the beta 

white box testing in parallel to the beta 

tests.

tests.

background image

GAMMA Testing Phase :]

GAMMA Testing Phase :]

Cynics have referred to all software 

Cynics have referred to all software 

releases as "gamma testing" since 

releases as "gamma testing" since 

defects are found in almost all 

defects are found in almost all 

commercial, commodity and publicly 

commercial, commodity and publicly 

available software eventually

available software eventually

background image

Remember !

Remember !

A

A

lpha and beta refer to stages of the 

lpha and beta refer to stages of the 

software before release (and also 

software before release (and also 

implicitly on the size of the testing 

implicitly on the size of the testing 

community, and the constraints on 

community, and the constraints on 

the testing methods), white box, 

the testing methods), white box, 

black box, and grey box refer to the 

black box, and grey box refer to the 

ways in which the tester accesses 

ways in which the tester accesses 

the target.

the target.

background image

C

C

ycle o

ycle o

f

f

 testing

 testing

Requirements Analysis: Testing should begin in the 

Requirements Analysis: Testing should begin in the 

requirements phase of the software life cycle(SDLC). 

requirements phase of the software life cycle(SDLC). 

Design Analysis: During the design phase, testers work 

Design Analysis: During the design phase, testers work 

with developers in determining what aspects of a design 

with developers in determining what aspects of a design 

are testable and under what parameter those testers work. 

are testable and under what parameter those testers work. 

Test Planning: Test Strategy

Test Planning: Test Strategy

Test Development: Test Scenarios, Test Cases, Test Scripts 

Test Development: Test Scenarios, Test Cases, Test Scripts 

to use in testing software. 

to use in testing software. 

Test Execution: Testers execute the software based on the 

Test Execution: Testers execute the software based on the 

plans and tests and report any errors found to the 

plans and tests and report any errors found to the 

development team. 

development team. 

Test Reporting: Once testing is completed, testers 

Test Reporting: Once testing is completed, testers 

generate metrics and make final reports on their test effort 

generate metrics and make final reports on their test effort 

and whether or not the software tested is ready for 

and whether or not the software tested is ready for 

release. 

release. 

Retesting the Defects 

Retesting the Defects 

background image

System testing

System testing

Most software produced today is 

Most software produced today is 

modular. System testing is a phase 

modular. System testing is a phase 

of software testing in which 

of software testing in which 

developers see if there are any 

developers see if there are any 

communications flaws--either not 

communications flaws--either not 

passing information, or passing 

passing information, or passing 

incorrect information--between 

incorrect information--between 

modules.

modules.

background image

Code Coverage

Code Coverage

Code coverage is inherently a white box testing 

Code coverage is inherently a white box testing 

activity.process allows developers and quality 

activity.process allows developers and quality 

assurance personnel to look for parts of a system that 

assurance personnel to look for parts of a system that 

are rarely or never accessed under normal conditions 

are rarely or never accessed under normal conditions 

(error handling and the like) and helps reassure test 

(error handling and the like) and helps reassure test 

engineers that the most important conditions 

engineers that the most important conditions 

(function points) have been tested.

(function points) have been tested.

process allows developers and quality assurance 

process allows developers and quality assurance 

personnel to look for parts of a system that are rarely 

personnel to look for parts of a system that are rarely 

or never accessed under normal conditions (error 

or never accessed under normal conditions (error 

handling and the like) and helps reassure test 

handling and the like) and helps reassure test 

engineers that the most important conditions 

engineers that the most important conditions 

(function points) have been tested.

(function points) have been tested.

background image

Testing Dilema

Testing Dilema

Exploratory vs. Scripted

Exploratory vs. Scripted

Manual vs. Automated

Manual vs. Automated

background image

Thank you 

Thank you 

 For paying atention to 

 For paying atention to 

the end of teh presentation !

the end of teh presentation !


Document Outline