There are four levels of testing
Unit Testing
Integration Testing
System Testing
User Acceptance Testing
Unit Testing
A unit is smallest testable piece of software
–can be compiled, linked, loaded
–e.gfunctions/procedures, classes, interfaces
–normally done by programmer
–Test cases written after coding
Buddy Testing
Team approach to coding and testing
One programmer codes the other tests and vice versa
Test cases ‐written by tester(beforecoding starts). Better than single worker approach
Objectivity
cross‐training
Models program specification requirement
Normally in programmers IDE (comfort zone)
Find unit bugs
Wrong implementation of functional specs
Testing function procedures e.g. the ValidatePIN() procedure
Integration Testing
Test for correct interaction between system units
•systems ‐built by merging existing libraries
•modules coded by different people
•Mainly tests the interfaces among units
•Bottom up integration testing
•Use of drivers
•Top down integration testing
•Use of stubs
Who does integration testing and when is it done?
•Done by developers/testers
•Test cases written when detailed specification is ready
•Test continuous throughout project
•Where is it done?
•done on programmer’s workbench
•Why is it done?
•Discover inconsistencies in the combination of units.
System Testing
Test of overall interaction of components
•Find disparities between implementation and specification
•Usually where most resources go to
•Involves –load, performance, reliability and security testing
Who performs system testing and when is it done?
–Done by the test team
–Test cases written when high level design spec is ready
•Where is it done?
–Done on a system test machine
–Usually in a simulated environment e.g. vmware
User Acceptance Testing
•Demonstrates satisfaction of user
•Users are essential part of process
•Usually merged with System Testing
•Done by test team and customer
•Done in simulated environment/real environment
Unit Testing
Integration Testing
System Testing
User Acceptance Testing
Unit Testing
A unit is smallest testable piece of software
–can be compiled, linked, loaded
–e.gfunctions/procedures, classes, interfaces
–normally done by programmer
–Test cases written after coding
Buddy Testing
Team approach to coding and testing
One programmer codes the other tests and vice versa
Test cases ‐written by tester(beforecoding starts). Better than single worker approach
Objectivity
cross‐training
Models program specification requirement
Normally in programmers IDE (comfort zone)
Find unit bugs
Wrong implementation of functional specs
Testing function procedures e.g. the ValidatePIN() procedure
Integration Testing
Test for correct interaction between system units
•systems ‐built by merging existing libraries
•modules coded by different people
•Mainly tests the interfaces among units
•Bottom up integration testing
•Use of drivers
•Top down integration testing
•Use of stubs
Who does integration testing and when is it done?
•Done by developers/testers
•Test cases written when detailed specification is ready
•Test continuous throughout project
•Where is it done?
•done on programmer’s workbench
•Why is it done?
•Discover inconsistencies in the combination of units.
System Testing
Test of overall interaction of components
•Find disparities between implementation and specification
•Usually where most resources go to
•Involves –load, performance, reliability and security testing
Who performs system testing and when is it done?
–Done by the test team
–Test cases written when high level design spec is ready
•Where is it done?
–Done on a system test machine
–Usually in a simulated environment e.g. vmware
User Acceptance Testing
•Demonstrates satisfaction of user
•Users are essential part of process
•Usually merged with System Testing
•Done by test team and customer
•Done in simulated environment/real environment
No comments:
Post a Comment