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

LECT-4B-TYPES OF SW TESTING

The presentation outlines the fundamentals of software testing, including definitions, principles, types of tests, test planning, execution, and real-time testing. Key testing types discussed are unit testing, integration testing, function testing, regression testing, and their respective advantages and disadvantages. The importance of thorough test planning and execution is emphasized to ensure software quality and reliability.

Uploaded by

mtulivukidd
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

LECT-4B-TYPES OF SW TESTING

The presentation outlines the fundamentals of software testing, including definitions, principles, types of tests, test planning, execution, and real-time testing. Key testing types discussed are unit testing, integration testing, function testing, regression testing, and their respective advantages and disadvantages. The importance of thorough test planning and execution is emphasized to ensure software quality and reliability.

Uploaded by

mtulivukidd
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 17

Software Testing

Name: Madam Teresa Abuya


Course: SOEN 410
Objective
The objective of this presentation is to
show the
 How to define Software Testing

Principles
 What are the types of Software Tests

 What is Test Planning

 Test Execution and Reporting

 Real-Time Testing
How to define Software
Testing Principles
 Testing
The execution of a program to find its faults
 Verification
The process of proving the programs
correctness.
 Validation
The process of finding errors by executing
the program in a real environment
 Debugging
Diagnosing the error and correct it
Software Testing Principles
 To remove as many defects as possible
before test since the quality
improvement potential of testing is
limited
What are the Types of
Software Tests
 Unit Testing (White Box)
 Integration Testing
 Function Testing (Black Box)
 Regression Testing
 System Test
 Acceptance and Installation Tests
Unit Testing (White Box)
 Individual components are tested.
 It is a path test.
 To focus on a relatively small segment
of code and aim to exercise a high
percentage of the internal path
 Disadvantage: the tester may be biased
by previous experience. And the test
value may not cover all possible values.
Integration Testing
 Top-down Integration Test
 Bottom-up Integration Test
Top-down Integration Test
 The control program is tested first.
Modules are integrated one at a time.
Emphasize on interface testing
 Advantages: No test drivers needed

Interface errors are discovered early


Modular features aid debugging
 Disadvantages: Test stubs are needed

Errors in critical modules at low levels are


found late.
Top-down Testing

T1
T1 A
A
T2
T2 B

B T3
T3 C
T4
Bottom-up Integration Test
 Allow early testing aimed at proving
feasibility
Emphasize on module functionality and
performance
 Advantages: No test stubs are needed
Errors in critical modules are found early
 Disadvantages: Test drivers are needed
Interface errors are discovered late
Bottom-up
testing

Test Test Test


Drivers Drivers Drivers

Level N Level N Level N

Test Test
Drivers Drivers

Level N-1 Level N-1


Function Testing (Black
Box)
 Designed to exercise the to its
external specifications
 Testers not biased by knowledge of the
program’s design.
 Disadvantages:
1. The need for explicitly stated
requirements
2. Only cover a small portion of the
possible test conditions.
Regression Testing
 Test the effects of the newly introduced
changes on all the previously integrated
code.
 The common strategy is to accumulate a
comprehensive regression bucket but also
to define a subset.
 The full bucket is run only occasionally, but
the subset is run against every spin.
 Disadvantages:
1. To decide how much of a subset to use and
which tests to select.
What is Test Planning
 Define the functions, roles and methods for
all test phases.
 Test planning usually start during the
requirements phase.
 Major test plan elements are:
1. Objectives for each test phase
2. Schedules and responsibilities for each test
activity
3. Availability of tools, facilities and test
libraries.
4. Set the criteria for test completion
Test Execution & Reporting
 Testing should be treated like an
experiment.
 Testing require that all anomalous
behavior be noted and investigated.
 Big companies keep a special library
with all copies of test reports, incident
forms, and test plans
Real-Time Testing
 Real-Time testing is necessary because the
deployment system is usually more
complicate than development system
 Rules apply for testing real time system
1. Evaluate possible deadlocks, thrashing to
special timing conditions
2. Use tests to simulate hardware faults.
3. Use hardware simulation to stress the
software design.
4. Design ways to simulate modules missing in
the development system.
References
 DeMillo, Software Testing and Evaluation
Benjamin/Cummings Publishing
Company, Inc California, 1987.
 Sommerville, Software Engineering
Addison-Wesley Publishing Company,
1996
 Humphrey, Managing the Software
Process, Addison-Wesley Publishing
Company, 1990.

You might also like