You are on page 1of 14

SOFTWARE TESTING

Prepared by
Hemavathy.P
Sivapriya.B
SYSTEM TESTING

System Testing is a level of the software testing where a complete and


integrated software is tested. The purpose of this test is to evaluate
the system's compliance with the specified requirements. Definition by
ISTQB. system testing: The process of testing an integrated system to verify
that it meets specified.
Types of system testing
Functional testing
Performance testing
Stress testing
Configuration testing
Security testing
Recovery
Functional testing
System functional tests have a great deal of
overlap with acceptance tests. Very often the
same test sets can apply to both.
Both are demonstrations of the systems
functionality. Functional tests at the system level
are used to ensure that the behavior of the
system adheres to the requirements
specification.
All functional requirements for the system must
be achievable by the system.
In fact, the tests should focus on the following
goals.
All types or classes of legal inputs must be
accepted by the software.
All classes of illegal inputs must be rejected.
All possible classes of system output must
exercised and examined.
All effective system states and state transitions
must be exercised and examined.
All functions must be exercised.
Performance testing
An examination of a requirements document shows
that there are two major types of requirements:
1. Functional requirements. Users describe what
functions the software should perform. We test for
compliance of these requirements at the system level
with the functional-based system tests.
2. Quality requirements. There are nonfunctional in
nature but describe quality levels expected for the
software. One example of a quality requirement is
performance level. The users may have objectives for
the software system in terms of memory use, response
time, throughput, and delays.
The goal of system performance tests is to see
if the software meets the performance
requirements.
Testers also learn from performance test
whether there are any hardware or software
factors that impact on the systems
performance.
Performance testing allows testers to tune the
system; that is, to optimize the allocation of
system resources
Stress testing
When a system is tested with a load that
causes it to allocate its resources in maximum
amounts, this is called stress testing.
Stress testing is important because it can
reveal defects in real-time and other types of
systems, as well as weak areas where poor
design could cause unavailability of service.
Stress testing is important from the user/client
point of view. When system operate correctly
under conditions of stress then clients have
confidence that the software can perform as
required.
Planners must insure resources are available
for the long time periods required.
Security testing
Designing and testing software systems to
insure that they are safe and secure is a big
issue facing software developers and test
specialists.
Recently, safety and security issues have taken
on additional importance due to the
proliferation of commercial applications for
use on the Internet
The effects of security breaches could be
extensive and can cause:
(i) loss of information;
(ii) corruption of information;
(iii) misinformation;
(iv) privacy violations;
(v) denial of service.
Recovery testing
Recovery testing subjects a system to losses of
resources in order to determine if it can
recover properly from these losses.
This type of testing is especially important for
transaction systems, for example, on-line
banking software.
A test scenario might be to emulate loss of a
device during a transaction.
The recovery testers must ensure that the
device monitoring system and the checkpoint
software are working properly.
Beizer advises that testers focus on the
following areas during recovery testing .
i. Restart
ii. switchover

You might also like