The 4 levels of testing you need to know
Test leader

The 4 levels of testing you need to know

There are 4 levels of quality assurance testing and more types of tests. Already knowing these 4 levels of testing will allow you to develop a testing strategy in line with the maturity of your project.

Are you currently working on your new website or mobile application? Or are you in the process of developing new features for your product? The question of testing will be asked very quickly!

Today, application and website testing is an essential part of the development process. There are many different types of testing and classification. So you may not know where to start or which test best suits your situation.

Don’t panic, in this article, we’ll go back to the basics and review them.

Levels of testing

According to the ISTQB (International Software Testing Qualifications Board), there are 4 levels of testing, generally represented by a pyramid.

Levels of testing

These different levels are a way of structuring and organizing the tests, according to the context and the stage of the project.

#1 The unit tests (or component test)

With unit testing, you will check a specific component of your software, independently of the rest, against the functional specifications. The purpose of this is to verify that each component of the product works as intended.

They are, in principle, performed by the developer in charge of the component code. Usually, he designs scripts to perform this repetitive task.

#2 The integration tests

This type of test is executed after the unit tests.

In this phase, the previously tested components are then combined to be tested together. This allows the identification of anomalies in the interactions between the different components of the product.

The integration test introduces the concept of “peer-testing”. The integration of the components is checked by the different developers on the project.

In agile projects, the tester appears as a full team member. He can therefore partially take charge of these tests. Or in any case bring his experience to frame the execution of the integration tests.

#3 The system tests

Once the integration tests have been completed (successfully), we can move on to system testing. Here, the aim is to test the software as a whole to evaluate its operation and compliance with the defined requirements.

The system test does not require any knowledge of web programming. These are “black box” type tests. That is to say that the tester executes input actions and verifies the output results. It does not care how the data has been processed in the middle. Moreover, this part has been verified (in principle) during the 2 previous levels of tests.

This phase should not be performed by developers. And thus avoid any bias during testing. The QA engineer brings here his expertise and rigor. He takes a step back on the developments and allows to have a view with an overview of the project.

Here the tester runs scenarios based on the functional specifications of the project. Tester has to check both the design and the behavior of the system.

The tester has different types of tests at his disposal:

  • Usability testing
  • Functional test
  • Compatibility test
  • Exploratory test
  • Regression testing
  • Load test
  • Stress test
  • Endurance test
  • Security test
  • Performance test
  • Requirements testing
  • End-to-End Test
  • Accessibility test

#4 The acceptance tests

Acceptance testing, or User Acceptance Testing (UAT), ensures that the software meets the needs of the end-users. This level of testing must be clearly differentiated from system testing. Just because the software meets the defined requirements does not mean that it will meet the needs of the users.

They are executed by the business or by end-users with the help of testers. It is, therefore, the last step before putting the website, mobile app, or software into production. To run successful acceptance test campaigns, the tester relies on the acceptance criteria defined before the project.

This last level of testing is a prerequisite prior to any production release. It ensures that developments comply with the use that will be made of them by the end-users of the solution. So Mr. and Mrs. Dupont and not the developers.

Each test level has its critical importance in the development process. Skipping one can have severe consequences on the final result. Indeed, the later a bug is discovered, the more expensive it is to fix it. Therefore, testing at the earliest possible stage often saves time and money.

Testing Studio helps you to set up a testing strategy adapted, but robust, to your project and your development mode.

Written by
Xavier Brice
Join the discussion

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 comment

Rocket Your App To the Next Level

The Testing Company For Websites And Mobile Apps Based In Asia.
We provide quality assurance testing services for any product that appears on a screen and interacts with a human :)
Let's talk about test!