Software Testing Life Cycle

27 Aug 2018
Software Testing Life Cycle

Contrary to popular belief, software testing is not just a single activity. It consists of a series of activities carried out methodologically to help certify your software product. These activities happen in stages and it is what constitutes the software life cycle.

The Stages In The Software Testing Life Cycle

Requirement Analysis

During this phase, test teams study the requirements from a testing point of view to identify the testable requirements. The QA team may interact with various stakeholders (client, business, analyst, technical leads, system architects, etc.) to understand the requirements in detail. Requirements could be either functional, by defining what the software must do, or non-functional, by defining system performance or security availability. Automation feasibility for the given testing project is also done in this stage.

Test Planning

This phase is also called the test strategy phase. Typically, in this stage, a Senior QA manager will determine effort and cost estimates for the project. He/she would also prepare and finalise the test plan. The activities in this stage include:

  • Preparation of the test plan and/or the strategy document for the various types of testing,
  • Test tool selection,
  • Test effort estimation,
  • Resource planning and determining roles and responsibilities, and
  • Training requirements.

Test Case Development

This phase involves the creation, verification and rework of test cases and test scripts. Test data is identified and created before it is reviewed and then reworked. Activities include:

  • Create test cases and automation scripts (if applicable),
  • Review and baseline test cases and scripts, and
  • Create test data if the test environment is available.

Test Environment Set-Up

The test environment determines the software and hardware conditions under which a product is tested. Test environment set-up is one of the critical aspects of the testing process and can be done in parallel with the test case development stage.

The test team may not be involved in this activity if the customer/development team provides the test environment. In this case, the test team is required to do a readiness check (smoke testing) of the given environment.

Test Execution

During this phase, the test team will carry out the testing based on the test plans and the test cases that have been prepared. Bugs will be reported back to the development team for correction and retesting will be performed.

Test cycle closure

The testing team will meet, discuss and analyse testing artefacts to identify strategies that have to be implemented in the future by taking the lessons learned from the current test cycle. The idea is to remove the process bottlenecks for future test cycles and share best practices for any similar projects in the future.

Need a team of skilled software testers working on your application? Then contact Inspired Testing today.

Sastri Munsamy

Executive: Technology and Innovation for Inspired Testing

Sastri is a passionate and engaging mentor, educator and speaker with extensive experience of real-world testing and automation projects. He has worked in the consultancy industry for over 17 years. He has implemented test automation on various systems ranging from desktop, Web, SAP and mobile applications in multiple industries across the world, with an emphasis on defining an efficient and profitable automation strategy. As a mentor, Munsamy has hosted testing community meetups in Cape Town and Johannesburg, and has guest spoken at numerous industry events.


Linkedin

Join the conversation on LinkedIn
Connect with our experts and read the latest industry insights on our dedicated LinkedIn page.