What Is Software Testing Life Cycle (STLC)?
Có thể bạn quan tâm
Software Testing:
In this tutorial, we discuss the Evolution of Software Testing, the Software Testing Life Cycle, and the various phases involved in STLC.
Table of Contents:
- 8 Phases of Software Testing Life Cycle (STLC)
- What is Lifecycle?
- What is the Software Testing Life Cycle (STLC)
- Conclusion
- Was this helpful?
- Recommended Reading
8 Phases of Software Testing Life Cycle (STLC)
Evolution:
1960’s Trend:
1990’s Trend
2000’s Trend:
The trend and competency of testing are changing. Testers are now required to be more technical and process-oriented. Testing now is not only limited just to finding bugs but has a wider scope and is required right from the beginning of the project when the requirements are not even finalized.
Since testing is also standardized. Just like the development of software has a lifecycle, Testing has a lifecycle. In the subsequent sections, I will be discussing what a life cycle is and how that is related to software testing and will try to elaborate on it.
Let us start!
What is Lifecycle?
Lifecycle in the simple term refers to the sequence of changes from one form to another form. These changes can happen to any tangible or intangible things. Every entity has a lifecycle from its inception to retirement/demise.
Similarly, Software is also an entity. Just like developing software involves a sequence of steps, testing also has steps that should be executed in a definite sequence.
This phenomenon of executing the testing activities in a systematic and planned way is called the testing life cycle.
What is the Software Testing Life Cycle (STLC)
Software Testing Life Cycle refers to a testing process that has specific steps to be executed in a definite sequence to ensure that the quality goals have been met. In the STLC process, each activity is carried out in a planned and systematic way. Each phase has different goals and deliverables. Different organizations have different phases in STLC; however, the basis remains the same.
Below are the phases of STLC:
- Requirements phase
- Planning Phase
- Analysis phase
- Design Phase
- Implementation Phase
- Execution Phase
- Conclusion Phase
- Closure Phase
#1. Requirement Phase:
During this phase of STLC, analyze and study the requirements. Have brainstorming sessions with other teams and try to find out whether the requirements are testable or not. This phase helps to identify the scope of the testing. If any feature is not testable, communicate it during this phase so that the mitigation strategy can be planned.
#2. Planning Phase:
In practical scenarios, Test planning is the first step of the testing process. In this phase, we identify the activities and resources that would help to meet the testing objectives. During planning, we also try to identify the metrics and the method of gathering and tracking those metrics.
On what basis the planning is done? Only requirements?
The answer is NO. Requirements do form one of the bases but 2 other very important factors influence test planning. These are:
– Test the strategy of the organization.– Risk analysis / Risk Management and mitigation.
Further Reading => Software Testing: A Complete Guide with Advanced Concepts
#3. Analysis Phase:
This STLC phase defines “WHAT” to be tested. We identify the test conditions through the requirements document, product risks, and other test bases. The test condition should be traceable back to the requirement.
Various factors affect the identification of test conditions:
– Levels and depth of testing– The complexity of the product– Product and project risks– Software development life cycle involved.– Test management– Skills and knowledge of the team.– Availability of the stakeholders.
We should try to write down the test conditions in a detailed way. For example, for an e-commerce web application, you can have a test condition as “User should be able to make a payment”. Or you can detail it by saying “User should be able to make payment through NEFT, debit card, and credit card”.
The most important advantage of writing the detailed test condition is that it increases the test coverage since the test cases will be written based on the test condition, these details will trigger the writing of more detailed test cases which will eventually increase the coverage.
Also, identify the exit criteria of the testing, i.e. determine some conditions when you will stop the testing.
#4. Design Phase:
This phase defines “HOW” to test. This phase involves the following tasks:
– Detail the test condition. Break down the test conditions into multiple sub-conditions to increase coverage.– Identify and get the test data– Identify and set up the test environment.– Create the requirement traceability metrics– Create test coverage metrics.
#5. Implementation Phase:
The major task in this STLC phase is the creation of detailed test cases. Prioritize the test cases and also identify which test case will become part of the regression suite. Before finalizing the test case, It is important to review it to ensure the correctness of the test cases. Also, don’t forget to take the sign-off of the test cases before the actual execution starts.
If your project involves automation, identify the candidate test cases for automation and proceed with scripting the test cases. Don’t forget to review them!
#6. Execution Phase:
As the name suggests, this is the Software Testing Life Cycle phase where the actual execution takes place. But before you start your execution, make sure that your entry criterion is met. Execute the test cases, and log defects in case of any discrepancy. Simultaneously fill your traceability metrics to track your progress.
#7. Conclusion Phase:
This STLC phase concentrates on the exit criteria and reporting. Depending on your project and stakeholders’ choice, you can decide on reporting whether you want to send out a daily report or a weekly report, etc.
There are different types of reports ( DSR – Daily status report, WSR – Weekly status reports) that you can send, but the important point is, that the content of the report changes and depends upon whom you are sending your reports.
If Project managers have a testing background then they are more interested in the technical aspect of the project, so include the technical things in your report ( number of test cases passed, failed, defects raised, severity 1 defects, etc.).
But if you are reporting to upper stakeholders, they might not be interested in the technical things so report to them about the risks that have been mitigated through the testing.
#8. Closure Phase:
Tasks for the closure activities include the following:
– Check for the completion of the test. Whether all the test cases are executed or mitigated deliberately. Check there is no severity 1 defects opened.– Do lessons learned meetings and create a lessons learned document. ( Include what went well, where are the scope of improvements, and what can be improved)
Conclusion
Let’s try to summarize the Software Testing Life Cycle (STLC) now!
S.No | Phase Name | Entry Criteria | Activities Performed | Deliverables |
---|---|---|---|---|
1 | Requirements | Requirements specification document Application design document User acceptance criteria document | Do brainstorming of the requirements. Create a list of requirements and get your doubts clarified. Understand the feasibility of the requirements whether it is testable or not. If your project requires automation, do the automation feasibility study. | RUD ( Requirements understanding document. Testing feasibility report Automation feasibility report. |
2 | Planning | Updated requirements document. Test feasibility reports “ Automation feasibility report. | Define the scope of the project Do the risk analysis and prepare the risk mitigation plan. Perform test estimation. Determine the overall testing strategy and process. Identify the tools and resources and check for any training needs. Identify the environment. | Test Plan document. Risk mitigation document. Test estimation document. |
3 | Analysis | Updated requirements document Test Plan document Risk Document Test estimation document | Identify the detailed test conditions | Test conditions document. |
4 | Design | Updated requirements document Test conditions document | Detail out the test condition. Identify the test data Create the traceability metrics | Detailed test condition document Requirement traceability metrics Test coverage metrics |
5 | Implementation | Detailed test condition document | Create and review the test cases. Create and review the automation scripts. Identify the candidate test cases for regression and automation. Identify / create the test data Take sign off of the test cases and scripts. | Test cases Test scripts Test data |
6 | Execution | Test cases Test scripts | Execute the test cases Log bugs / defects in case of discrepancy Report the status | Test execution report Defect report Test log and Defect log Updated requirement traceability metrics |
7 | Conclusion | Updated test cases with results Test closure conditions | Provide the accurate figures and result of testing Identify the risks which are mitigated | Updated traceability metrics Test summary report Updated risk management report |
8 | Closure | Test closure condition Test summary report | Do the retrospective meting and understand the lessons learnt | Lessons learnt document Test matrices Test closure report. |
HAPPY TESTING!!
Was this helpful?
Submit Cancel Thanks for your feedback!Recommended Reading
- Best Software Testing Tools 2025 [QA Test Automation Tools]
Comprehensive list of the best Software Testing Tools. Put an end to your search for the right Manual or Automated Testing Tool with this informative list: We are happy to present this exclusive list of the most popular QA Testing…
- Software Testing QA Assistant Job
We are hiring a software testing QA assistant as a part of our Growth Plan. Note: You must apply with the details as requested in how to apply section. Without that your application will not be considered. You should be:…
- Software Testing Course: Which Software Testing Institute Should I join?
The software testing question and answer posts are back! Yes, this post is part of Question and Answer Series we started couple of months back and I will be doing it frequently in coming posts. Today I am going to…
- Software Testing Technical Content Writer Freelancer Job
We are looking for authors and writers who can write on technical topics. The topics are mostly related to software testing, QA, Test Automation, Career, Employment, etc. Job Description A Strong Command Over English Grammar (Verbal And Written) 2+ Years…
- Some Interesting Software Testing Interview Questions
In an application currently in production, one module of code is being modified. Is it necessary to re-test the whole application or is it enough to just test functionality associated with that module? What is the most challenging situation you…
- Software Testing Course Feedback and Reviews
Software Testing Course Feedback and Testimonials Software Testing Training Participant’s Feedback: Aamer Choudhry I am 100% satisfied with the course and its content. Swati is very professional and explains every question I have in regards to software testing.If we have…
- What is Defect/Bug Life Cycle in Software Testing? Defect Life Cycle Tutorial
Introduction to the Defect Life Cycle In this tutorial, we will talk about the life cycle of a defect to make you aware of the various stages of a defect which a tester has to deal with while working in…
- Is Software Testing an Emotional Task?
What do you think after reading the title of the post? How can we include emotions while testing software? What kind of emotions am I going to talk about? How does daily life emotions effect/impact software testing? Please read on… Software…
Từ khóa » Vòng đời Testing
-
Tìm Hiểu Về Vòng đời Kiểm Thử Phần Mềm (STLC) - Viblo
-
Vòng đời Kiểm Thử Trong Một Vài Mô Hình Phát Triển Phần Mềm Phổ ...
-
Vòng đời Kiểm Thử Phần Mềm
-
Vòng đời Của Bug/Defect Trong Kiểm Thử Phần Mềm | Anh Tester
-
Vòng đời Kiểm Thử Phần Mềm - Khái Niệm Kiểm Thử Viên Phải Nắm Rõ
-
STLC (Software Testing Life Cycle) Là Gì? - W3seo Vòng đời Kiểm Thử
-
STLC - Vòng đời Kiểm Thử Phần Mềm - Chiến Lược CNTT
-
Vòng đời Kiểm Thử Phần Mềm - First News - Trí Việt
-
STLC (Software Testing Life Cycle) Là Gì? - W3seo Vòng đời Kiểm Thử
-
Mối Quan Hệ Giữa Vòng đời Phát Triển Phần Mềm Và ...
-
Vòng đời Kiểm Thử Phần Mềm - YouTube
-
[PDF] Chương 2: Vòng đời Phần Mềm - Soict
-
Quy Trình Kiểm Thử Phần Mềm Software Testing Life Cycle (STLC)