Acceptance Testing Process
CPE 308
Prerequisites
Current release is on download page, packaged as a jar file.
User manual is posted.
Release notes posted, including known issues.
All tests in repository.
Each test script includes author name.
Each team has a "guest" account enabled for their repository that
allows checkout.
Procedure
Instruct will assign review team pairings.
Each team divides into two groups: Product Testers and Integration
Testers
Product Testers
Read user manual and known issues.
Download current release and launch it from a command line.
Exercise all the features included in this release.
Write a list of problems encountered.
Any unhandled exceptions cause immediate rejection.
Determine Accept or Reject and inform developers.
Integration Testers
See configuration manager of other team for guest account password.
Checkout repository using guest account.
Run integration test script, verify all passing.
Examine source code.
If you identify a defect from pure inspection of the source code,
and can create a unit test that reveals it, reject the release.
Seed a defect (and record where).
Build the defective code and be sure you can observe the defective
behavior.
Run integration tests (before halftime).
WHILE the tests Pass while running defective code
Inform authors their integration tests are bad.
Demonstrate the defective behavior.
Developers write more tests and commit them to the
repository.
Reviewers "update" their working directory and rerun
the integration test.
END
Inform authors the integration tests are good.
(If developers can't exit the loop before time expires, the release is
rejected).