Test Process
The test process is a structured
process that guides the testing activities from planning to execution to final
reporting. The following are the basic steps involved in a typical software
test process:
- Test Planning: The first step involves
establishing the testing objectives and developing a test plan, which
describes the overall strategy that will be followed. This includes
selecting the testing methodology, identifying the tests to be performed,
and planning the resources and timelines.
- Test Design: In this step, the detailed test
procedures or scripts are developed. This may include identifying and
creating test cases based on the software's requirements and
functionality. Test data is also prepared in this phase.
- Test Environment Setup: The test environment
is prepared to execute the test cases. This involves setting up the
hardware and software requirements, and configuring the test environment
as closely as possible to the production environment.
- Test Execution: In this step, the test cases
are executed according to the plan. Any discrepancies between the expected
and actual results are logged as defects.
- Defect Reporting and Tracking: Any defects
or issues identified during test execution are reported and tracked until
they are fixed.
- Retesting and Regression Testing: Once the
defects are fixed, retesting is done to ensure the issues are properly
resolved. Regression testing is also done to make sure that the defect
fixes have not introduced new issues.
- Test Closure: After the testing is
completed, a test closure report is prepared. This includes summarizing
the testing efforts, detailing the test findings, and providing an
assessment of the quality of the software. The test artifacts are also
stored for future use.
- Test Review and Improvement: The last step
is a review of the entire test process to identify areas of success and
areas that need improvement for future projects. This continuous
improvement is key to successful testing in the long term.
Each organization may have
variations of this process depending on their specific needs and practices, but
the core elements remain largely the same.
Test Process: Base Lining a
Test Plan, Test Case Specification
The test process, as already detailed,
includes various steps from planning to execution. Two key elements in this
process are base lining a test plan and test case specification.
- Base Lining a Test Plan: Baseline refers to
a set of documents that have been reviewed and approved, and serve as a
reference point. The baselining of a test plan happens once all the
stakeholders review and approve the plan. This baseline version of the
test plan is then used throughout the test cycle. If any changes need to
be made to the test plan during the testing phase, they must be formally
controlled and documented.
- Test Case Specification: This is a detailed
document that describes the purpose, inputs, expected outcomes, and
execution conditions for each individual test. It guides the tester
through a sequence of actions to effectively test the functionality of the
software application. A well-defined test case specification includes:
- Test Case ID: A unique identifier to track the
test case.
- Test Scenario: The functionality or part of the
software that will be tested.
- Test Steps: Detailed steps to follow to execute
the test.
- Test Data: Any specific data that needs to be used
during testing.
- Expected Result: What the system should do or show
as a result of the test.
- Actual Result: The actual outcome of the test.
- Status (Pass/Fail): The result of comparing the
expected result to the actual result.
- Remarks: Any notes on the execution of the test
case.
These components are integral to
the test process and help ensure a systematic, structured, and effective testing
approach.