Writing clear and executable test cases is very important for effective testing. The quality and therefore success of your product is guaranteed by this procedure, so you cannot afford to take chances and create test cases randomly. Minding this, let’s consider the following essential characteristics for test cases.
Test cases must be:
- Focused on one thing. A single test case should measure only one thing or one aspect. Suppose it tests two things at once and one of them fails. Will the test case pass or not? Someone could say ‘partly’. Bu this is not the result testers are expected to report. Tests should be precise and avoid ambiguity.
- Self-sufficient. Test cases cannot depend on other test cases. If before maintaining one needs to run several more test cases, your test is inefficient. If you have to include some preconditions, this should be made as part of test case’s setup to avoid any dependencies. In this case though beware of too many prescriptions. The benefit of such independence is that test cases can be executed in a random order. This also can define whether they may be implemented in parallel in case of automation.
- Definite. Test designers should specify the criteria of success or fail of a given test case clearly in order to get definite results and avoid ‘fuzziness’.
- Repeatable. There is usually a need to repeat some of test cases, so make sure you constructed your test case in such a way that it can be rerun any time, both immediately or after some time. Often this suggests that testers reset the environment into its prior state either removing database entries or just clearing their cookies.
- Comprehensible. Since your test case may be run by other testers, ensure that it is legible and understandable for this audience.
The guidelines mentioned above can be successfully applied while thinking up the test cases beforehand as well as deciding which tests should be automated. If you have problem with it BugHuntress QA lab can offer you high quality software testing consulting services.