Vous êtes sur la page 1sur 12

White box testing

ThoughtWorks, 2007

Objective
What is White box testing

Techniques of white box testing


What is Grey Box testing

ThoughtWorks, 2007

What is it?
Testing the internal structure of the software Understand the code and the code will set you free! White-box testing is testing that takes into account the internal mechanism of a system or component

Its also known as Structural testing, clear box testing and glass box testing
ThoughtWorks, 2007

Techniques
Statement coverage

Loop testing
Path testing Branch testing

ThoughtWorks, 2007

Statement Coverage
Statement coverage: All statements in a method are executed. void foo (int a, b, c, d, e) { if (a == 0) { return; int x = 0; if ((a==b) OR ((c==d) AND bug(a) )) { x =1; e = 1/x; } } }

ThoughtWorks, 2007

Loop testing
Test the for and while loops in the code. Look for exceptions of infinite loop. Cause execution of loop to be skipped. Loop to be executed exactly once. Loop to be executed more than once

ThoughtWorks, 2007

Path testing
Make sure all the paths are covered. Determine the paths Construct a logic flow chart

ThoughtWorks, 2007

Path testing: Determine Paths


FindMean (FILE ScoreFile) { float SumOfScores = 0.0; int NumberOfScores = 0; 1 float Mean=0.0; float Score; Read(ScoreFile, Score); 2 while (! EOF(ScoreFile) { 3 if (Score > 0.0 ) { SumOfScores = SumOfScores + Score; NumberOfScores++; } 5 Read(ScoreFile, Score); 6

} /* Compute the mean and print the result */ 7 if (NumberOfScores > 0) { Mean = SumOfScores / NumberOfScores; printf( The mean score is %f\n, Mean); } else printf (No scores found in file\n); 9 }
ThoughtWorks, 2007

Path testing: Logic flow diagram


Start 1 F T 3 T 4 6 7 T 8 Exit F 9 F 5 2

ThoughtWorks, 2007

Branch testing
Also known as Conditional Testing

Make sure that each possible outcome from a condition is tested at least once.
if (i=true)

printf (I am true)
else printf (I am false)

Possible Testcases are


1. i=true; 2. i=false
ThoughtWorks, 2007

Grey box testing


What is it?
Mixture of both black box and white box.
Test the system with a basic outlook of internals.

When you do?


Once the functionality is developed

Example Database testing Using SQL

ThoughtWorks, 2007

Grey box testing: SQL


Some times testers may have to use SQL to help in the black box testing. Types of Grey box using SQL
Data Validation
Data security Query for system updates

ThoughtWorks, 2007

Vous aimerez peut-être aussi