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

STE unit2

Uploaded by

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

STE unit2

Uploaded by

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

Jai Mahakali Shikshan Sanstha’s

AGNIHOTRI POLYTECHNIC NAGTHANA,WARDHA


Department Of Computer Engineering
Subject: Software Testing

UNIT:-2
Types and Levels of
Testing

Marks 18
Syllabus

Levels of testing

2.1 Unit testing: Driver, Stub

2.2 Integration testing: Top-Down Integration

Integration Testing: Bottom-Up Integration

Bi-Directional Testing

2.3 Testing on Web Application:

Performance Testing:Load Testing

Stress Testing, Security Testing,

Client Server Testing

2.4 Acceptance Testing: Alpha Testing and Beta Testing, Special Tests:

Regression Testing, GUI Testing.

 Unit Testing: Unit testing is a software testing technique where individual components
or units of a software application are tested in isolation to ensure they perform as
expected. It involves testing each unit of the code independently to verify its
functionality.

 Stub
Stubs are developed by software developers to use them in place of modules, if
the respective modules aren’t developed, missing in developing stage, or are
unavailable currently while Top-down testing of modules. A Stub simulates
module which has all the capabilities of the unavailable module. Stubs are used
when the lower-level modules are needed but are unavailable currently.

 Drivers
Drivers are also used when some modules are missing and unavailable at time of
testing of a specific module because of some unavoidable reasons, to act in
absence of required module. Drivers are used when high-level modules are
missing and can also be used when lower-level modules are missing.
 Integration Testing: Integration testing is a logical extension of unit testing. In it’s
simplest form, two units that have already been tested are combined into a component
and the interface between them tested.

 Top-Down Integration
Top-down testing is a type of incremental integration testing approach in which
testing is done by integrating or joining two or more modules by moving down
from top to Bottom through the control flow of the architecture structure. In these,
high-level modules are tested first, and then low-level modules are tested. Then,
finally, integration is done to ensure that the system is working properly.

Top-Down Integration

 Bottom-Up Integration
Bottom-up Testing is a type of incremental integration testing approach in which
testing is done by integrating or joining two or more modules by moving upward
from bottom to top through the control flow of the architecture structure. In these,
low-level modules are tested first, and then high-level modules are tested.
Bottom-up testing is user-friendly testing and results in an increase in overall
software development. This testing results in high success rates with long-lasting
results.

Bottom-Up Integration
 Bi –Directional Testing
Bi-directional Integration is a kind of integration testing process that combines
top-down and bottom-up testing. With an experience in delivering Bi-directional
testing projects custom software development services provide the best quality of
the deliverables right from the development of software process. Bi-directional
Integration testing is a vertical incremental testing strategy that tests the bottom
layers and top layers and tests the integrated system in the computer software
development process. Using stubs, it tests the user interface in isolation as well as
tests the very lowest level functions using drivers. Bi-directional Integration
testing combines bottom-up and top-down testing. Bottom-up testing is a process
where lower level modules are integrated and then tested. This process is repeated
until the component of the top of the hierarchy is analyzed.

Bi-Directional Integration

 Testing on Web Application: Web application testing, a software testing technique


exclusively adopted to test the applications that are hosted on web in which the
application interfaces and other functionalities are tested.

 Performance testing
Performed to verify the server response time and throughput under various load
conditions.
 Load testing
It is the simplest form of testing conducted to understand the behaviour of the
system under a specific load. Load testing will result in measuring important
business critical transactions and load on the database, application server, etc. are
also monitored.
 Stress testing
It is performed to find the upper limit capacity of the system and also to determine
how the system performs if the current load goes well above the expected
maximum.
 Security testing
Performed to verify if the application is secured on web as data theft and
unauthorized access are more common issues and below are some of the
techniques to verify the security level of the system.

 Client-Server Testing
Client Server Application is an Application that requires to be preinstalled on the
client’s Desktop or laptop. In these testing ,the client sends a request to the server
and the server sends a response back to the client with the required information.
Thus, it is also known as Two-Tier Application Testing. For example, Email,
FTP, etc.

Client-server architecture

 Acceptance Testing:
1) It is formal testing according to user needs, requirements, and business processes
conducted to determine whether a system satisfies the acceptance criteria or not and
to enable the users, customers, or other authorized entities to determine whether to
accept the system or not.
2) Acceptance Testing is an important aspect of Software Testing, which guarantees
that software aligns with user needs and business requirements.
The major aim of this test is to evaluate the compliance of the system with
the business requirements and assess whether it is acceptable for delivery or not.

 Alpha Testing
Alpha Testing is a type of software testing performed to identify bugs before
releasing the product to real users or the public. Alpha Testing is one of the User
acceptance tests. This is referred to as Alpha testing only because it is done early
on, near the end of the development of the software.

 Beta Testing
Beta Testing is performed by real users of the software application in a real
environment. Beta testing is one of the types of User Acceptance Testing. A Beta
version of the software, whose feedback is needed, is released to a limited number
of end-users of the product to obtain feedback on the product quality. Beta testing
helps in minimization of product failure risks and it provides increased quality of
the product through customer validation. It is the last test before shipping a
product to the customers. One of the major advantages of beta testing is direct
feedback from customers.

 Special Tests

 Regression Testing
Regression testing is like a software quality checkup after any changes are made.
It involves running tests to make sure that everything still works as it should, even
after updates or tweaks to the code. This ensures that the software remains reliable
and functions properly, maintaining its integrity throughout its development
lifecycle.

Regression Testing
 Graphical User Interface Testing (GUI) Testing
1) Graphical User Interface Testing (GUI) Testing is the process for ensuring proper
functionality of the graphical user interface (GUI) for a specific application.GUI
testing generally evaluates a design of elements such as layout, colors and also fonts,
font sizes, labels, text boxes, text formatting, captions, buttons, lists, icons, links, and
content. GUI testing processes may be either manual or automatic and are often
performed by third-party companies, rather than developers or end users.

2) Graphic User Interface Testing (GUI) testing is the process of ensuring proper
functionality of the graphical user interface (GUI) for a specific application. This
involves making sure it behaves in accordance with its requirements and works as
expected across the range of supported platforms and devices.

GUI Example

You might also like