What is a Software Testing Life Cycle? - Phases & Process

Instructor: Sudha Aravindan

Sudha has a Doctor of Education degree in math education and is currently working as a Information Technology Specialist.

The Software Testing Life Cycle is a set of steps that have to be completed in a specific sequence to test programming code or software to ensure that software meets the required standards and to identify areas for improvement.

What is Software?

When you type a Word document or an Excel file, you use a program on your computer. These programs are known as software programs. To make these programs work, there is programming code written in computer programming languages such as Java or C. Even the Windows and Mac operating systems are all classified as software. In general, software is different from computer hardware and includes all the programs that add functionality to the hardware of a computer.

What is Software Testing?

Software testing is quality analysis of the software code to understand whether the software performs as expected, and to learn about ways in which it can be improved. Suppose you entered a baking contest and you are planning to make cookies. Chances are you will first make a small batch of cookies to test how good your recipe is. Depending on the feedback you receive about the taste and other qualities of the cookie, you would then modify your recipe. Software testing is similar in the sense that, after a programmer or a team of programmers writes a software program, there are information technology (IT) professionals known as Testers who would then test the software to see if there are areas where the software crashes or does not yield the results as expected.

Steps of Software Testing

The Software Testing Life Cycle (STLC) includes a number of steps that have been completed in sequence. Even though some of these steps can vary, in general the main sequence of steps are the following:

  • Requirement Analysis
  • Planning the test
  • Developing the test case
  • Setting up the test environment
  • Executing the test
  • End of test, or closing the test cycle

We can look at each of these steps in more detail.

Requirement Analysis

The very first step in the STLC is the Requirement Analysis phase. In this stage, the Testing or Quality Assurance team decides what needs to be tested. There are two main kinds of testing - functional and non-functional. Functional testing includes tests to evaluate how the software is functioning: for example, if a button to 'Add item to the Shopping Cart' actually adds the item to the cart, or if when searching for an item, say a red dress in size Medium, all red dresses in size Medium are displayed. Non-functional testing includes features that are behind-the-scenes such as performance and security.

Planning the Test

After a decision is made as to what aspects of testing need to be completed, the next stage is planning how the test will be conducted. This includes determining the resources in terms of cost and number of personnel that should be dedicated to the testing phase, the number of hours it would take, and the deadlines by which the results should be delivered.

Developing the Test Case

One of the important stages of the Software Testing Life Cycle is developing the test case. This includes writing out a step-by-step procedure on how the test should be executed, the expected results, the actual results, and if the test was a pass or a fail. For example, to test the button for adding items to a shopping cart, the test case could look something like this:

Step 1: Select an item.

Step 2: Click the button 'Add item to shopping cart.'

Step 3: Check to see if the correct item and correct quantity was added to the shopping cart.

Step 4: If the item was added correctly, the test was a pass; otherwise, it was a fail.

Setting Up the Test Environment

Before the actual testing can be started, the test environment has to be set up. When you are testing cookies for the baking contest, you would not make a whole batch of cookies; instead, you would make a small batch or a number of small batches and get your family and friends to taste the cookies. In a similar way, a determination has to be made about what version of the software will be tested, on what operating systems it will be tested, on what browsers the software will be tested, and so on. Once the test environment is set up with the computers running different operating systems and the different browsers, we are ready to proceed to the actual testing.

To unlock this lesson you must be a Member.
Create your account

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use

Become a member and start learning now.
Become a Member  Back
What teachers are saying about
Try it risk-free for 30 days

Earning College Credit

Did you know… We have over 200 college courses that prepare you to earn credit by exam that is accepted by over 1,500 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.

To learn more, visit our Earning Credit Page

Transferring credit to the school of your choice

Not sure what college you want to attend yet? has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.

Create an account to start this course today
Try it risk-free for 30 days!
Create an account