...
Test case document provides three levels of functional decomposition (or grouping). The first level is Test Suites (TS). Each Test Suite has one or more Test Cases (TC). Each Test Case typically has many Test Assertions (TA) and Test Steps. Test Steps are optional. It is a human readable version of test scripts. Having them as a prelude to test script writing will make the task easier. However, it could be cumbersome to keep them in sync as some ideas may change quite a bit when writing the test script.
...
After Test Suite, Test Case provide another level of grouping and decomposition of the system behavior. Test Assertion then indicates a specific compliance. We may say that Test Case is a grouping of Test Assertions that can share a common pre-condition, i.e., system and data set up, but there may be other grouping criteria such as a certain sub-functionality. Test Assertions are typically written in a monotonic sequence such that the system condition is ready for the next Test Assertion with little or no need to delete, rollback, or rollback datareinitialize data. Test Assertion (TA) is a single condition/behavior of a TC.
As mentioned earlier, Test Steps are optional. They describe a sequence of actions that lead to the verification of each test assertion. Some Test Steps are just preparation steps. It is a good practice to provide links to Test Assertions on the step, which verifies one or more Test Assertions.
Example: “Test Suite 10: Working branch Core Component Management Behaviors for Developer” consists of TCs that test the functions related to Core Components in the Working branch when a developer user account is logged into Score. “Test Case 10.3: Editing a brand-new developer ACC” test the editing functionality of a brand-new ACC when it is being edited by a developer. “TA 1.5 A warning should be given when the Definition is empty” checks the behavior related to the Definition field of a ACC in “Test Case 10.3: Editing a brand-new developer ACC”.
Test document format
Each Test Suite is written in Markdown, and consists of the description and multiple test cases. Each Test Case has the description, pre-conditions, assertions, and test steps. Here’s a form of the test suite:
...