Monday, August 27, 2018

How to Create a Test Plan and Test Cases: A Simplified View

Acknowledgement: Most of the content of this post are based on the Book " Advanced Software Project Management" by Andrew Stellman and Jennifer Greene. However Errors if any are due to me and I apolozie for them.


The goal of test planning is to establish the list of tasks which, if performed, will identify all of the requirements that have not been met in the software.
The main work product is the test plan.
     The test plan documents the overall approach to the test. In many ways, the test plan serves as a summary of the test activities that will be performed.
     It shows how the tests will be organized, and outlines all of the testers’ needs which must be met in order to properly carry out the test.
     The test plan should be inspected by members of the engineering team and senior managers.
     The bulk of the test planning effort is focused on creating the test cases.

Fig: Sample format of Test Plan


      A test case is a description of a specific interaction that a tester will have in order to test a single behavior of the software.
      Test cases are very similar to use cases, in that they are step-by-step narratives which define a specific interaction between the user and the software.
     A typical test case is laid out in a table, and includes:
      A unique name and number
      A requirement which this test case is exercising
      Preconditions which describe the state of the software before the test case (which is often a previous test case that must always be run before the current test case)
      Steps that describe the specific steps which make up the interaction
      Expected Results which describe the expected state of the software after the test case is executed
      Test cases must be repeatable.
     Good test cases are data-specific, and describe each interaction necessary to repeat the test exactly.
        The requirement specified on chapter 6-  how a search-and-replace function must deal with case sensitivity. One part of that requirement said, “If the original text was all lowercase, then the replacement  text must be inserted in all lowercase.”



Fig: Test Case Sample