TechTarget.com/searchsoftwarequality

https://www.techtarget.com/searchsoftwarequality/definition/system-testing

system testing

By Kinza Yasar

What is system testing?

System testing, also referred to as system-level testing or system integration testing, is the process in which a quality assurance (QA) team evaluates how the various components of an application interact together in the full, integrated system or application.

System testing verifies that an application performs tasks as designed. It's a type of black box testing that focuses on the functionality of an application rather than the inner workings of a system, which white box testing is concerned with.

System testing, for example, might check that every kind of user input produces the intended output across the application. System testing is the third level of testing in the software development process. It's typically performed before acceptance testing and after integration testing.

Importance of system testing

System testing is imperative for interconnected systems because any system or software defect can cause extreme complications for the consumers. For example, in 2014, Nissan had to recall over 1 million cars due to a defect in the airbag sensor detectors.

With system testing, a QA team determines whether a test case corresponds to each of an application's most crucial requirements and user stories.

The following are the main benefits of system testing:

Types of system testing

With system testing, a QA team gauges if an application meets all of its technical, business and functional requirements. To accomplish this, the QA team might utilize various types of software testing techniques that determine the overall test coverage for an application and help catch critical defects that hamper an application's core functionalities before release.

The following are the common types of system testing techniques:

Phases of system testing

System testing examines every component of an application to make sure that they work as a complete and unified whole. A QA team typically conducts system testing after it checks individual modules with functional or user story testing and then each component through integration testing.

If a software build achieves the desired results in system testing, it gets a final check via acceptance testing before it goes to production, where users consume the software. An app dev team logs all defects and establishes what kinds and numbers of defects are tolerable.

Typically, system testing goes through the following stages:

  1. Test environment. In this initial stage, a test server is set up for creating a testing environment, which enables a tester to run a set of predefined test cases and test scripts.
  2. Test case. This stage generates the test case for the testing process.
  3. Test data. At this stage, the data to be tested is generated.
  4. Test case execution. Once the test case and test data are generated, test cases are executed.
  5. Reporting of defects. This is the stage where defects in the system are identified.
  6. Regression testing. This is done to see if any problems were introduced into the development process by the previous stages.
  7. Defect logging. All the identified defects are fixed at this stage.
  8. Retest. A test is repeated if it's unsuccessful.

System testing tools

Various commercial and Open Source tools help QA teams perform and review system testing results. These tools can create, manage and automate tests or test cases, and they might also offer features beyond system testing, such as requirements management capabilities.

Commercial system testing tools include Froglogic's Squish and Inflectra's SpiraTest, while open source tools include Robotium and SmartBear's SoapUI.

Not every software tester has access to all of the available testing resources. For example, a tester working for a large enterprise likely has access to expensive automated testing that might not be available to smaller organizations.

Each software development team follows its own preferred method of application testing. Select a software testing model by exploring these five factors first.

14 Mar 2023

All Rights Reserved, Copyright 2006 - 2025, TechTarget | Read our Privacy Statement