Test Design

When the test planning is completed, testers receive this test plan document. With this testers also get System Request Specification document sometimes along with the Business Request Specification document. In case of lack of training testers study these documents to have a good grasp/domain knowledge on the application or current project or the product. When testers understand the documents properly they go for preparation of Test Design document which are of two types:

1) High Level Test Design
2) Low Level Test Design

High Level Test Design

This is the first step in preparation of the test design. In this, testers are responsible for the preparation of the Test scenarios for the relevant modules in the software under test. In order to create the test scenarios, testers are given either of the below:

a) Functional Specification
b) Use Case
c) Screen/Mock-up
d) Non Functional Specification

However preparation of the test scenarios will be common for either/all of the above 4 styles. It includes the below three parts/sections:

1. BVA (Boundary Value Analysis)
2. ECP (Equivalence Class Partition)
3. Decision Table
  • Here Boundary Value Analysis deals with the size/range of the particular field (inputs and outputs of the application/software/product) like this filed should take minimum 4 characters and maximum 15 characters.
  • Here ECP deals with the Type/format of the inputs to the fields like this field (inputs and outputs of the application/software/product) should only characters/special characters/Blank spaces etc. or it should not allow numeric values
  • In 'Decision Table' we mention the expected output/outcome for the initial/previous valid and invalid fields of different combinations.It is used to define the positive and negative inputs to validate variations of the functionalities in the software under test.
Orthogonal Arrays- In this concept the repetition of decisions in the decision table is avoided.

Low Level Test Design

When the test scenarios writing is done, testers enhance(here enhancing scenarios means breaking it into further parts ) those test scenarios into test cases. Test scenarios just tell us about the specific test condition but the test cases tells about the step by step procedure to test the scenarios. In general, testers follow IEEE-829 format for writing the test cases.

Format of IEEE-829

 1) Test Case Id- This is a unique number or name or sometimes combinations of number and name both which is used for reference

2) Test Case Name- This is the name of the relevant test scenario

3) Feature/Module- This is the name of the parent module for the relevant test case.

4) Priority- This denotes the importance level of the relevant test case like below:

              (a) High (Priority- P0)             [It is related to the Functional Part]
              (b) Medium (Priority- P1)       [It is related to the Non-Functional Part (excluding usability)]
              (c) Low (Priority- P2)             [It is related to the Usability]

5) Test Suite Id- It is the id for the parent of the niche test cases or we can say this is the name of the                 batch in which there are more than one test case.

6) Test Set-up- This represents the required conditions to follow the above 5 steps and to start the test             execution.

7) Test Environment- This represents the required software and hardware in order to run the test cases.

8) Test Procedure- This is the step by step procedure in order to run the current test case(s).