WHITEBOX TESTING APPROACH Objective Testing based on an
WHITEBOX TESTING APPROACH Objective: Testing based on an analysis of the internal structure of the component or system
WHITEBOX APPROACH High-level design Control flow Graphs Cyclomatic Complexity INPUT OUTPUT IT 6004 - SOFTWARE TESTING 12 out of 16
What do you verify in White Box Testing ? Ø In the White box testing following steps are executed to test the software code: Ø Basically verify the security holes in the code. Ø Verify the broken or incomplete paths in the code. Ø Verify the flow of structure mention in the specification document Ø Verify the Expected outputs Ø Verify the all conditional loops in the code to check the complete functionality of the application. Ø Verify the line by line or Section by Section in the code & cover the 100% testing.
White Box Approaches in Test Design – – – Statement testing Branch testing Path testing Data flow Mutation testing Loop testing
WHITE BOX TESTING ADVANTAGES Ø Testing can be commenced at an earlier stage. One need not wait for the GUI to be available. Ø Testing is more thorough, with the possibility of covering most paths.
WHITE BOX TESTING DISADVANTAGES Ø Since tests can be very complex, highly skilled resources are required, with thorough knowledge of programming and implementation. Ø Test script maintenance can be a burden if the implementation changes too frequently. Ø Since this method of testing it closely tied with the application being testing, tools to cater to every kind of implementation/platform may not be readily available.
Blackbox Vs White. Box Criteria Black Box Testing White Box Testing Definition Black Box Testing is a software testing method in which the internal structure/ design/ implementation of the item being tested is NOT known to the tester White Box Testing is a software testing method in which the internal structure/ design/ implementation of the item being tested is known to the tester. Levels Applicable To Mainly applicable to higher levels of testing: Acceptance Testing System Testing Mainly applicable to lower levels of testing: Unit Testing Integration Testing Responsibility Generally, independent Software Testers Generally, Software Developers Programming Knowledge Not Required Implementation Knowledge Not Required Basis for Test Cases Requirement Specifications Detail Design
- Slides: 7