Software Testing Life Cycle - STLC Phases



Software Testing Life Cycle

  • STLC stands for Software Testing Life Cycle.
  • Software Testing Life Cycle(STLC) is a step by step procedure of specific activities that are conducted during the testing phase to ensure the software quality goals are met.
  • STLC involves both Validation and Verification activities.
  • The procedure of testing a software is also known as STLC which includes the phases of testing.
  • The testing process is executed in a well-planned and systematic manner.
  • All activities are done to improve the quality of the software product.
  • Each phase has different goals and deliverables.
  • STLC is a fundamental part of Software Development Life cycle, but it contains only phases of testing.
  • STLC starts immediately after the requirements are defined or software requirement document is shared by the clients.
  • STLC is done step by step to ensure the quality of a software.
Software Testing Life Cycle

Software Testing Life Cycle

Entry Criteria and Exit Criteria

  • Entry Criteria : Entry Criteria gives the prerequisite items that must be completed before testing can begin.
  • Exit Criteria : Exit Criteria defines the items that must be completed before testing can be concluded.
Entry Criteria and Exit Criteria

Entry Criteria and Exit Criteria

Manual Testing Example

Manual Testing

Manual Testing

Automation Testing Example

Automation Testing

Automation Testing

Phases of STLC

  • Requirements phase
  • Planning Phase
  • Analysis phase
  • Design Phase
  • Implementation Phase
  • Execution Phase
  • Conclusion Phase
  • Closure Phase
Attributes of Software

STLC Phases

Requirement Phase

  • During this phase of STLC, the requirements are studied and analyzed.
  • Brainstroming sessions are conducted with the teams to find out if the requirements are testable or not.
  • Scope of Testing is identified in this phase.
  • If any of the features is not testable, it is communicated in this phase to plan the mitigation strategy.
Requirement Phase

Requirement Phase

Planning Phase

  • It is the first step of the testing process.
  • This is the phase where we identify the activities and resources which would help to meet the testing objectives.
  • In this planning phase, test metrics are also identified and methods to gather and track those metrics is identified.
  • Test planning process is also affected by
    • Test Strategy of the organization.
    • Risk Analysis / Risk Management and mitigation.
Planning Phase

Planning Phase

Analysis Phase

  • This is the phase which determines what needed to be tested.
  • Test condition, product risk and other test bases are identified in this phase through the requirement documents.
  • The test condition should be traceable back to the requirement.
  • Factors that affect the test conditions are:
    • 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.
  • Detailed Test Conditions are written in this phase. Advantage of writing detailed test conditions is that it increases the test coverage as the test cases will be written on the basis of the test condition.
  • Exit criteria for testing is also determined i.e. some conditions need to be determine when the testing will be stoped.
Analysis Phase

Analysis Phase

Design Phase

  • This phase determines how to test.
  • It involves the 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.
Design Phase

Design Phase

Implementation Phase

  • The important process in this phase is creation of detailed test cases.
  • Test cases can also be prioritized to determine which of the test cases will be a part of regression suite.
  • Test cases are also reviewed in this pahse to ensure the correctness of the test case.
  • Sign off test cases are taken for testing before the actual execution starts.
  • If project uses automation, identify the candidate test cases for automation and proceed for scripting the test cases after reviewing them.
Implementation Phase

Implementation Phase

Execution Phase

  • This is the phase in STLC where the actual execution starts.
  • We should ensure that out Entry criteria is met before starting to execute the test cases.
  • Once the entry criterion is met, execute the test case, log defects if any discrepency is found.
  • Traceability matrix should also be filled to track the progress of execution.
Execution Phase

Execution Phase

Conclusion Phase

  • Exit criteria and Reporting is concentrated in this phase.
  • Depending on the stake holder and project choice, we can decide whether you want to send the reports daily or weekly.
  • There are different types of reports ( DSR – Daily status report, WSR – Weekly status reports) available and the contents of the report changes to whom the reports are being send.
  • If project manager is from a testing background, he will be interested in the technical aspect of project.
  • Technical things like number of test cases passed, failed, defects raised, severity should included in the test report for project manager.
  • Reports which are sent to stake holders will not include the above mentioned technical aspects, but should include the risks that have been mitigated through the testing.
Conclusion Phase

Conclusion Phase

Closure Phase

  • This is the phase where the testing phase ends.
  • Tasks for the closure activities include the following:
    • Check for the completion of test. Check if all the test cases are executed or mitigated purposefully.
    • Check if severity or any defects are opened.
    • Documents which include what went well, what are the scope of improvements and what can be improved are documented.
closure Phase

Closure Phase


Related Searches to Software Testing Life Cycle - STLC Phases