Testing
critical in software development - software quality control
verifies if software accurately meets specs
Types
Statistical Testing: tests reflect frequency of user inputs for reliability estimation
Defect Testing - tests designed to discover system defects
Stages
Unit test individual components
Integration exposes problems arising from combination of components
System test complete system before delivery (functional & performance)
Acceptance (alpha) users check the system satisfies requirements
Testing & Debugging
Defect Testing confirms presence of defect
Debugging locating and repairing the defects
- form hypthesis about program behavior
- test hypotheses to find defect
Test Plan
guides test cycle