Thursday 18 May 2017

Test Case

Test Case:
The testing quality depends on,
·         Mood of the TE
·         Testing is not consistent
·         Varies from person to person
So, we write test cases.

Test case is a document which covers all possible scenarios to test all the feature(s).
It is a set of input parameters for which the s/w will be tested. The SRS are numbered so that developers and testing team will not miss out on any feature.


When do we write test cases?
Customer gives requirements – developer start developing and they say they need about 4 months to develop this product – during this time, testing team start writing test cases – once it is done, they send it to test lead who reviews it and adds some more scenarios – developers finish developing the product and the product is given for testing – the test engineer then looks at the test cases and starts testing the product – the TE never looks at the requirements while testing the product – thus testing is consistent and does not depend on the mood and quality of the test engineer.

The list of values derived to test the Amount text field is – Blank, -100, hundred, 100, 6000, Rs100, $100, $+?, 0100, Blankspace100, 100.50, 0, 90
When writing test cases, actual result should never be written as the product is still being developed. Only after execution of test cases should the actual result be written.

Why we write test cases?
·         To have better test coverage – cover all possible scenarios and document it, so that we need not remember all the scenarios
·         To have consistency in test case execution – seeing the test case and testing the product
·         To avoid training every new engineer on the product – when an engineer leaves, he leaves with lot of knowledge and scenarios. Those scenarios should be documented, so that new engineer can test with the given scenarios and also write new scenarios.
·         To depend on process rather than on a person

Let’s say a test engineer has tested a product during 1st release, 2nd release and has left the company for the 3rd release. As this TE has mastered a module and has tested the application rigorously by deriving many values. If that person is not there for 3rd release, it becomes difficult for the new person – hence all the derived values are documented, so that it can be used in feature. 



When developers are developing the 1st product (1st release), TE writes test cases. In the 2nd release, when new features are added, TE writes test cases. In the next release, when features are modified – TE modifies test cases or writes new test cases.