Documents And Their Usability In Software Testing


Software Testing is an important phase of SDLC and is carried out with a sole purpose of identifying the defects that may be present in a system. This activity consumes as much time as does the development and includes the execution of multiple cycles.

According to Mike Wooldridge, “The ability to test a system depends on a thorough, competent requirements document.” (Source: Mike Wooldridge – Software Engineering)

Therefore, in order to execute thorough testing for a system, the test team needs to have access to and create the following documents:

Functional Specifications:

A Functional Specification or FS is a formal document which describes the requirements to be implemented including the application’s capabilities, appearance and interactions with users. The document helps the test team to learn about the overall behavior of the system.

Software Requirement Specifications:

A Software Requirements Specification or SRS is a detailed document that covers the functional and non-functional requirements of the application and also describes how the system is expected to perform. The test team uses SRS to prepare and plan for the functional and non-functional types of testing.

Use Cases:

A Use Case is a list of actions or steps that defines the interactions between an actor (human) and the system. Use Cases document covers the interaction between the two entities and how they act and perform at different levels. These are developed after evaluating the FS and SRS documents. The test team uses these Use Cases to create Test Cases.

Test Plan:

A Test Plan is a document created by the test team lead after evaluating the FS, SRS and Use Cases documents. It describes the scope, approach, resources and schedule of intended test activities to be carried out throughout the SDLC. It also includes the features to be tested, the testing tasks, the test environment, and the entry and exit criteria.

Test Cases:

Test Case is created by the test team and is a set of data including the pre and post conditions, the expected results and the steps to follow, developed to test every requirement individually and specifically. Test cases are derived from the Use Cases and one Use Case may have multiple Test Cases.

Defect Report:

At the end of a testing cycle, testers create a formal Defect Report. The main purpose of a Defect Report is to highlight the problems identified in the application as clearly as possible so that the developers can reproduce and fix them easily.

Closure Report:

The Project Closure Report is the last of the documents created for a project by the test team lead. The primary purpose of the report is to provide a complete picture of success and failures of the project. It is also used to identify best practices for future projects and to formally close the project.

These documents help the test team by reducing the effort they need to put in for planning and executing the software testing cycles and also maintain a record of the defects which can lead to potential threats that may arise in future.