You are on page 1of 3

Software Testing Process and Requirements

Introduction:

In the Software Development Life Cycle, Testing is placed right after coding/development
phase. In the coding/development phase the individual objects or components of the
application are coded from the physical model. Once the system objects have been
developed, they are gathered and connected together (integrated) to create a working
application. The integrated application is placed on a staging server for testing.
Software Testing is the process of executing a program or system with the intent of
finding errors

Purpose:

Software bugs will almost always exist in any software module with moderate size: not
because programmers are careless or irresponsible, but because the complexity of
software is generally intractable -- and humans have only limited ability to manage
complexity. It is also true that for any complex systems, design defects can never be
completely ruled out. As computers and software are used in critical applications, the
outcome of a bug can be severe. Testing is performed -
a. To demonstrate that the product performs each function intended
b. To demonstrate that the internal operation of the product performs according to
specification and all internal components have been adequately exercised
c. To increase our confidence in the proper functioning of the software.
d. To show the product is free from defect.

General Types of Testing:

Unit Testing
Integration Testing
Acceptance Testing

Testing Process:

The testing process can be divided into three main phases –

Test Planning
Test Execution
Test Closure

Test Planning –

The Test-Planning phase includes -

1) Receipt of documents from the client/developers. The documents include –


a. Business Requirement Document (From the Client)
b. Functional Specification Document (From the Client/Developers)
c. Physical Deign Document (From the Client/Developers)

2) The understanding of the application by the testers (includes clarification


sessions arranged by the client)

3) Preparation of the following documents by the Testing Team –


a. Test Conditions and Test Cases (this would be done through Excel
Templates or using Test director as the case may be)
b. Traceability Matrix (when the document is prepared through Excel
templates)
c. Test Data (with a valid set of data received from the client or developers)
d. Test Environment Set-up (simulation of the user’s environment)
i. Input Required from the Client –
1. Hardware used in Client Environment that is
compatible with the application
2. Software used in Client Environment that is
compatible with the application

The Test-Execution phase includes –

Entry Criteria:

Sign off on the Test Cases prepared by the testing team, by the client
Completion of Test Environment set up
Deployment of code

Execution Phase:

Round 1 - The SQA Engineers having the Test Script document, as the base
would perform one full round of testing. The defects encountered would be
logged on a daily basis. The defects logged would be supported by a screen shot
of the defect. This would be communicated to the developers on a daily basis.

Round 2 - The Developer's are expected to deploy the fixed code to the test
environment only after the completion of one full round of testing. The second
round of testing would be performed by the SQA Engineers having the defect log
as the base and would mark only the retest of defects that are identified as
'Fixed' by the developers.

Round 3 - The final and the third round would again include one full round of
testing performed by the SQA Engineers having the Test Scripts as the base.

Exit Criteria:

All the defects raised are 'Closed' and one full round of regresstion testing has
been performed
Test Closure Phase –

The Closure phase would include the transfer of all the final list of deliverables to the
client including –

a. Test Conditions and Test Cases


b. Traceability Matrix (as the case may be)
c. Defect Log
d. Final Summary Report

The above-mentioned process would be followed for each type of testing performed
depending on the scope of testing defined.

Conclusion:

As part of testing, the processes as categorized by SEI CMM/ISO are strictly adhered to
so as to ensure the Quality of the product tested.

You might also like