0% found this document useful (0 votes)
125 views

Chapter 4 - What Is System Testing

System testing validates the fully integrated software product from the user's perspective without examining internal code. It evaluates end-to-end system specifications and how components interact with each other and external hardware/software. Common types of system testing include usability testing, load testing, regression testing, recovery testing, and functional testing. System testing tools like Eggplant can automate testing across platforms and integrations to compress testing cycles. The specific system testing types used depend on factors like resources, time available, and the tester's experience.

Uploaded by

Aamir Afzal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
125 views

Chapter 4 - What Is System Testing

System testing validates the fully integrated software product from the user's perspective without examining internal code. It evaluates end-to-end system specifications and how components interact with each other and external hardware/software. Common types of system testing include usability testing, load testing, regression testing, recovery testing, and functional testing. System testing tools like Eggplant can automate testing across platforms and integrations to compress testing cycles. The specific system testing types used depend on factors like resources, time available, and the tester's experience.

Uploaded by

Aamir Afzal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

What is System Testing?

Types & Definition


with Example

What is System Testing?


System Testing is a level of testing that validates the complete and fully
integrated software product. The purpose of a system test is to evaluate the end-
to-end system specifications. Usually, the software is only one element of a larger
computer-based system. Ultimately, the software is interfaced with other
software/hardware systems. System Testing is actually a series of different tests
whose sole purpose is to exercise the full computer-based system.
In this tutorial, we will learn

 System Testing is Blackbox


 What do you verify in System Testing?
 Software Testing Hierarchy
 Different Types of System Testing
 System Testing Tools
 What Types of System Testing Should Testers Use?

System Testing is Blackbox


Two Category of Software Testing

 Black Box Testing


 White Box Testing

System test falls under the black box testing category of software testing.

White box testing is the testing of the internal workings or code of a software
application. In contrast, black box or System Testing is the opposite. System test
involves the external workings of the software from the user’s perspective.

What do you verify in System Testing?


System Testing involves testing the software code for following
 Testing the fully integrated applications including external peripherals in
order to check how components interact with one another and with the
system as a whole. This is also called End to End testing scenario.
 Verify thorough testing of every input in the application to check for desired
outputs.
 Testing of the user’s experience with the application. 

That is a very basic description of what is involved in system testing. You need to
build detailed test cases and test suites that test each aspect of the application as
seen from the outside without looking at the actual source code. 

Software Testing Hierarchy

As with almost any software engineering process, software testing has a prescribed
order in which things should be done. The following is a list of software testing
categories arranged in chronological order. These are the steps taken to fully test
new software in preparation for marketing it:

 Unit testing performed on each module or block of code during


development. Unit Testing is normally done by the programmer who writes
the code.
 Integration testing done before, during and after integration of a new
module into the main software package. This involves testing of each
individual code module. One piece of software can contain several modules
which are often created by several different programmers. It is crucial to test
each module’s effect on the entire program model.
 System testing done by a professional testing agent on the completed
software product before it is introduced to the market.
 Acceptance testing – beta testing of the product done by the actual end
users.

Different Types of System Testing


There are more than 50 types of System Testing. For an exhaustive list of software
testing types click here. Below we have listed types of system testing a large
software development company would typically use

1. Usability Testing– mainly focuses on the user’s ease to use the application,
flexibility in handling controls and ability of the system to meet its objectives
2. Load Testing– is necessary to know that a software solution will perform
under real-life loads.
3. Regression Testing– involves testing done to make sure none of the changes
made over the course of the development process have caused new bugs. It
also makes sure no old bugs appear from the addition of new software
modules over time.
4. Recovery testing – is done to demonstrate a software solution is reliable,
trustworthy and can successfully recoup from possible crashes.
5. Migration testing- is done to ensure that the software can be moved from
older system infrastructures to current system infrastructures without any
issues.
6. Functional Testing – Also known as functional completeness
testing, Functional Testing involves trying to think of any possible missing
functions. Testers might make a list of additional functionalities that a
product could have to improve it during functional testing.
7. Hardware/Software Testing – IBM refers to Hardware/Software testing as
“HW/SW Testing”. This is when the tester focuses his/her attention on the
interactions between the hardware and software during system testing.
System Testing Tools
1) Eggplant
The average enterprise application has 50 external
dependencies. Eggplant enables robust end-to-end testing for your entire tech
stack.

Features:

 Technology-agnostic: Eggplant can test any software written in any language


 Automate processes that span multiple applications and platforms, from
mobile to mainframe, from Citrix to Cloud.
 Test integrations with hardware components including robotics and IoT
devices to ensure real-world performance.
 Eggplant seamlessly integrates into your CI/CD pipeline and compresses
testing cycles to allow for quicker releases.

What Types of System Testing Should Testers Use?


There are over 50 different types of system testing. The specific types used by a
tester depend on several variables. Those variables include:

 Who the tester works for – This is a major factor in determining the types of
system testing a tester will use. Methods used by large companies are
different than that used by medium and small companies.
 Time available for testing – Ultimately, all 50 testing types could be used.
Time is often what limits us to using only the types that are most relevant for
the software project.
 Resources available to the tester – Of course some testers will not have the
necessary resources to conduct a testing type. For example, if you are a
tester working for a large software development firm, you are likely to have
expensive automated testing software not available to others.
 Software Tester’s Education- There is a certain learning curve for each type
of software testing available. To use some of the software involved, a tester
has to learn how to use it.
 Testing Budget – Money becomes a factor not just for smaller companies
and individual software developers but large companies as well. 

You might also like