Testing defined

 

 

Activities of a Tester

 

 

 

 

 

Black box testing

Assumes no knowledge of internal workings – only has access to specification

White box testing

Assumes internal knowledge – attempts to examine implementation

Useful b/c errors are randomly dispersed in all execution paths & b/c logic errors are inversely proportional to execution probability

Path testing

White box testing scheme that uses flowchart-like graphs to find execution paths

Equivalence partitioning

Black box testing method that divides input into domains and tests representatives for each domain; each representative test case consists of one valid and two invalid samples

Boundary Analysis

Most errors occur at boundaries of input domains (see equivalence partition).  Boundary Value Analysis (BVA) goes beyond equivalence partitioning, selecting (in addition) “edge” values to test.

Verification

“Are we building the product right?”

Validation

“Are we building the right product?”

Unit testing

At the module level

Integration testing

Bringing the pieces together (either top-down w/ stubs or bottom-up in clusters)

Usability testing

Confirm that the product fulfills the interface requirements

Regression testing

Apply past test cases to verify that changes have not broken anything before

 

 

 

Project Artifact

Appropriate Testing

Requirements

Acceptance Testing

System Design

System Testing (verify)

Program Design

Integration Testing

Coding

Unit Testing