Software Testing Life Cycle
Software Testing is not considered as a single activity like Do and Close it, but rather it is an ongoing process which never stops (Requirements analysis to test closure, again Requirement Analysis start for new one.) that's why we consider a sequence of activities (Lifecycle) conducted to perform Software Testing.
Points to highlight on STLC process
- Using certain orders, STLC ensures that the quality standards of an application were met.
- Each order has its own activities, goals, and deliverables.
- Each organization follows different phases whereas the basis for STLC remains the same.
In order to understand the orders/phases in details, let's consider a real-time example which suits STLC process Try to build/construct an apartment
For this we have to go through below sequential phases:
Phase 1: Needs/Requirements:
Here will focus on our basic needs to start an apartment, which is very crucial critical analysis.
Action items involved:
After fulfillment of our needs will plan according to needs
Action items involved :
Phase 3: Designing/Construct:
As per plan, we start to design the building by analyzing the plan.
Action items involved:
Phase 4 : Verify:
Here we will verify the apartment parameters by referring to design/construct. If actual dimensions of the rooms are not as per design, will do rectification actions and make changes.
Phase 5: Closure activities:
Once all activities complete will happy to go to home
similarly, we can describe Software testing life cycle with below phases:
Phase 1: Test Requirement Analysis:
It is an initial phase where Testable Requirements will be analyzed by QA Team which are basic user needs/expectations.
Here QA Team builds strong communication Stakeholders (customer, business analyst, technical leads. system architects, user, client, etc..,) to understand the user ideas (requirements) in detail. Action items:
- Test priorities and focus of testing.
- Types of tests like manual or automation will be finalized.
- Functional and Non-Functional Requirements etc..,
Phase 2: Test Planning
Here higher level people like QA LEAD or QA Manager Will prepare a document which consists of efforts and cost estimates for the project and Complete the test activity.
- Prepare Test plan/Test Strategy document.
- Planning and determining roles and responsibilities of each resource
- Efforts estimation.
- Tools used for testing etc...,
Phase 3: Test case/Design development:
Here on seeing the Test plan document, QA Team will Start preparing the Test scenarios, with that, they will write Test cases. These Test scenarios/Test cases will be reviewed by higher level people and approved Test cases will be used to execute the application.
Test scenarios can be both positive and negative checks. Acton items
- Prepare Test cases/Test scripts.
- Test cases/Test scripts review
- Test Data preparation
Phase 4: Test Execution:
Here QA Team will start executing the application/software (which were migrated from Development team to check) by referring to the written Test Design/Test cases.
If the actual result (from application) doesn't meet the expected result (from Test cases), then the corresponding test case will be failed. QA Team inform the failed Test case to Developer for correction and test will be carried again after fix from the developer. Action items:
- Check application according Test cases.
- Generate Test results of Test casses to be executed (both pass and fail)
- Retesting of fixed defects.
Phase 5: Test closure Activities:
Once all Test activities involved in the Test process completes.QA Team will prepare a Test report which shows the Test results by referring to a number of Test cases Written, number of "No Run" Test cases, number of Test cases" passed" (which were passed after fix) etc..,
Basic names for test reports are: Test summary report. Test execution Report. Test status Report. Test post morten Report. Action items: Test Analysis report. Test final report.