Automated tests should be:
• Concise – Test should be as simple as possible and no simpler.
• Self Checking – Test should report its results such that no human interpretation is
necessary.
• Repeatable – Test can be run repeatedly without human intervention.
• Robust – Test produces same result now and forever. Tests are not affected by
changes in the external environment.
• Sufficient – Tests verify all the requirements of the software being tested.
• Necessary – Everything in each test contributes to the specification of desired
behavior.
• Clear – Every statement is easy to understand.
• Efficient – Tests run in a reasonable amount of time.
• Specific – Each test failure points to a specific piece of broken functionality (e.g.
each test case tests one possible point of failure).
• Independent – Each test can be run by itself or in a suite with an arbitrary set of
other tests in any order.
• Maintainable – Tests should be easy to modify and extend.
• Traceable – Tests should be traceable to the requirements; requirements should be
traceable to the tests.
No comments:
Post a Comment