The challenge of test case design
Testing scenarios may be based on functional or non-functional requirements. Which requirements take precedence depends on what is being tested.
The structure of a test case scenario is based upon the list of requirements combined with user interaction and, when necessary, the operational environment. This requires a certain amount of detail in order to enable testers to execute the scenarios easily and each scenario can have more than one test case.
It is important to be as simple and straightforward as possible in test case description. Ideally, test cases ought to be easy to understand and self explanatory. The tester should be informed not only of the steps to be run, but also of any information or automation required to successfully run the test.
Test case design can be challenging because test case scenarios are often intended to cover a number of possibilities and so instructions can become rather vague, or complex. This is why it is important to have as much documentation as possible concerning the various steps in any given test. This includes any preconditions that are required as well as post conditions and what results are expected.
There is a tendency to try and make a given test do more than it should do. This complicates the scenario and adds an unwieldy number of steps which can be confusing and slow testing down. Tests should be simple and straightforward and no tests should have more steps that are required to make a proper determination with regarding what is being tested. Test cases should not cover more than twenty steps and ideally less than fifteen.
Remember that your ultimate goal in writing test case scenarios is to create tests that are easy to administer while meeting documentation. This includes making sure that you have 100% coverage of all specified requirements. And finally, the best test case scenario is one that keeps the end user in mind.