200 likes | 321 Views
Testing in Industry. Testing. Testing is not important in school homework Testing is not important in research work to produce experimental statistics for publishing paper Testing is not important in a research prototype Testing, however, is very important for a commercial products.
E N D
Testing • Testing is not important in school homework • Testing is not important in research work to produce experimental statistics for publishing paper • Testing is not important in a research prototype • Testing, however, is very important for a commercial products.
Test Plan Template • STP.doc • http://www.sqatester.com/documentation/testplansmpl.htm • http://en.wikipedia.org/wiki/Test_plan#IEEE_829_test_plan_structure
Smoke Tests • A smoke test is a subset of the test cases that is typically representative of the overall test plan. • Smoke tests are good for verifying proper deployment or other non invasive changes. • They are also useful for verifying a build is ready to send to test. • Smoke tests are not substitute for actual functional testing. http://www.stellman-greene.com
Load testing • To exercise the system to the maximum load that is specified in specs. • The goal is to test whether the system meet the requirement
Stress testing • The goal of stress testing is to exercise a system beyond the load in specs to see what it can happen. • require considerable cost and efforts. • often require you to implement a system to test the system. • Load testing is necessary but stress testing is optional. • E.g., a online game server may limit the users to prevent system from crash
The Criteria to stop Alpha testing • It is impossible to fix all the bugs in practice. There are pressure to release a software. • Possible criteria • Bug discovering rate is lower than bug fixing rate • Serious bug (ex. bugs level 1-10 have not appear in a period of time) • Bug density is less than a threshold (experienced values) • The number of defects identified in a component or system divided by the size of the component or system (expressed in standard measurement terms e.g. lines-of code number of classes or function points).
More practical criteria to exit testing • Most modern software applications are so complex, and run in such an interdependent environment, that complete testing can never be done. Common factors in deciding when to stop are: • Deadlines (release deadlines, testing deadlines, etc.) • Test cases completed with certain percentage passed • Test budget depleted • Coverage of code/functionality/requirements reaches a specified point • Bug rate falls below a certain level • Beta or alpha testing period ends