Tuesday, March 3, 2009

I need an automated test suite for my project quickly. How can I get it up and running quickly?

Embarking on a project involving automated tests can often be overwhelming because there is just so much functionality that could be automated. One way to get the automated testing off the ground sooner is by simply identifying a subset of functionality that will be automated (using 80/20 rule - 20% of the effort to achieve 80% test coverage - we hope!)

Here is how we prioritize test cases that best qualify for automated testing:
  1. Executed often (ie. Sanity type test case).
  2. Covers a feature commonly used by end users
  3. Relatively short (or can be broken down into manageable cases).
  4. Has clear and measurable expected results that can be verified by automation.
  5. Covers an area that is not likely to undergo drastic changes (so that the script wouldn’t need heavy maintenance).
  6. Follows a positive path through the application (as opposed to negative error testing which would be automated as a lower priority).
  7. As a group, the test cases to be automated should provide broad coverage of as many areas as possible, instead of too deep coverage of any particular area.

No comments:

Post a Comment