STE UNIT-2 Notes
STE UNIT-2 Notes
STUBS:
Assume you have 3 modules, Module A, Module B and
module C. Module A is ready and we need to test it, but
module A calls functions from Module B and C which are
not ready, so developer will write a dummy module which
simulates B and C and returns values to module A. This
dummy module code is known as stub.
DRIVERS:
Now suppose you have modules B and C ready but module
A which calls functions from module B and C is not ready
so developer will write a dummy piece of code for module
A which will return values to module B and C. This dummy
piece of code is known as driver.
STUBS DRIVERS
Stubs are used when sub Drivers are used when main
programs are under programs are under
development development
Integration Testing:
Upon completion of unit testing, the units or modules are
to be integrated which gives raise to integration testing.
The purpose of integration testing is to verify the
functional, performance, and reliability between the
modules that are integrated.
To reduce risk
To verify whether the functional and non-functional
behaviors of the interfaces are as designed and
specified
To build confidence in the quality of the interfaces
To find defects (which may be in the interfaces
themselves or within the components or systems)
To prevent defects from escaping to higher test levels
Top-Down Integration:
In Top Down Integration Testing, testing takes place from
top to bottom. High-level modules are tested first and then
low-level modules and finally integrating the low-level
modules to a high level to ensure the system is working as
intended.
Bottom-Up Integration:
Throughput
Resource utilization
Maximum user load
Business-related metrics
#Stress Testing:
Stress testing a Non-Functional testing technique that is
performed as part of performance testing. During stress
testing, the system is monitored after subjecting the
system to overload to ensure that the system can sustain
the stress.
The recovery of the system from such phase (after stress)
is very critical as it is highly likely to happen in production
environment.
Reasons for conducting Stress Testing:
It allows the test team to monitor system performance
during failures.
To verify if the system has saved the data before
crashing or NOT.
To verify if the system prints meaning error messages
while crashing or did it print some random
exceptions.
To verify if unexpected failures do not cause security
issues.
Stress Testing - Scenarios:
Monitor the system behavior when maximum number of
users logged in at the same time.
All users performing the critical operations at the same
time.
All users Accessing the same file at the same time.
Hardware issues such as database server down or some of
the servers in a server park crashed.
#Security Testing:
Security testing is a testing technique to determine if an
information system protects data and maintains
functionality as intended. It also aims at verifying 6 basic
principles as listed below:
Confidentiality
Integrity
Authentication
Authorization
Availability
Non-repudiation
#Beta Testing:
Beta testing also known as user testing takes place at the
end users site by the end users to validate the usability,
functionality, compatibility, and reliability testing.
Beta testing adds value to the software development life
cycle as it allows the "real" customer an opportunity to
provide inputs into the design, functionality, and usability
of a product. These inputs are not only critical to the
success of the product but also an investment into future
products when the gathered data is managed effectively.