Introduction
In this article we will learn about software testing artifacts. In the software testing process, several artifacts can be produced. Testing documentation involves the documentation of artifacts that should be developed before or during the testing of Software.. Some artfacts related to software testing are explained below.
Test Plan
A Test Plan is a document or a test specification that is used to test an application, the resources to be used in the test environment in which the testing will be performed, the limitations of the testing and the schedule of testing activities. A Test Plan can be used to describe the testing scope and activities. It is the basis for formally testing any software/product in a project.
Traceability Matrix
We can also call a Traceability Matrix a Requirement Traceability Matrix (RTM). A Traceability Matrix is a table that correlates requirements during the software development life cycle or design documents to test documents. It is used to change tests when related source documents are changed, to select test cases for execution when planning for regression tests by considering requirement coverage.
We can use a Traceability Matrix in the entire SDLC (Software Development Life Cycle) phase like Risk Analysis phase, Requirement Analysis and Specification phase, Source code analysis, Unit Testing, Integration Testing phase and Validation phase. A Traceability Matrix is one of three types:
- Forward Traceability
- Backward Traceability
- Bi-Directional Traceability
Test case
IEEE Standard 610 defines a test case as "A set of test inputs, execution conditions and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requiremetnt". A test case normally consists of Test case ID, Product Module, Product version, Revision history, Purpose, Assumptions, Pre-Conditions, Steps, Expected Outcome and Actual Outcome.
Using a Test Case we can store information, acclerate regression testing, pass information to new members to the team and reuse "checklists" between projects and track a testing process.
Test Scenario
A Test Scenario is a set of test cases that specifies what area in the application will be tested. It ensures that all the process flows are tested from end to end. A Test Scenario is based on some logic, like typical usage or the convenience to test by the modules.
A test case and Test Scenario are interchangable but the main diffrence between them is that Test Scenarios has several steps however test cases have a single step.
While writing a Test Scenario, do the following:
- Choose a part, use grouping.
- Write Smoke and Critical scenarios.
- Organize scenarios logically.