ITE 2004-Software Testing: Module - 4
ITE 2004-Software Testing: Module - 4
Module - 4
UNIT & INTEGRATION TESTING
1 12/18/23
Objectives
• Types:
12/18/23 2
Evolution
Unitof Software
Validation Testing Testing
Drivers
12/18/23 3
Unit Validation Testing
Evolution of Software Testing
• Stubs
Stub can be defined as a piece of software that works similar to
a unit which is referenced by the Unit being tested, but it is much
simpler that the actual unit.
12/18/23 4
Integration Testing
12/18/23 5
Integration Testing
12/18/23 6
Practical Approach for Integration Testing
12/18/23 7
Software Testing
Decomposition based Myths
integration testing
12/18/23 8
Incremental Integration Testing
12/18/23 9
Call Graph Based Integration
12/18/23 10
Pair-wise Integration
12/18/23 11
Neighborhood Integration
12/18/23 12
Path Based Integration
• Source Node
• Sink Node
• Module Execution Path (MEP) Message
• MM-Path
• MM-Path Graph
12/18/23 13
Path Based Integration
12/18/23 14
Function Testing
12/18/23 15
System Testing (Non-Functional)
12/18/23 16
• System Testing is the process of attempting to demonstrate that a
program does not meet its original requirements and objectives, as stated
in the requirement specification.
12/18/23 17
Recovery Testing
12/18/23 18
Compatibility/Conversion/Configuration Testing
• Conversion Testing
• Ranking of possible configurations: Identification of test cases:
• Updating the compatibility test cases
12/18/23 19
Performance Testing
12/18/23 20
Performance Testing
Load Testing
- when a system is tested with a load that causes it to allocate its
resources in maximum amount
Stress Testing
- The system is put under loads beyond the limits so that the
system breaks.
- Eg input transactions
- Disk space
- Output
- Communications
- Interaction with users
12/18/23 21
Usability Testing
Ease of Use
Interface steps
Response Time
Help System
Error Messages
12/18/23 22
Security Testing
• Confidentiality
• Integrity
• Authentication
• Authorization
• Availability
• Non-repudiation
12/18/23 23
Acceptance Testing
12/18/23 24
Acceptance Testing
• Alpha Testing
• it is the test period during which the product is complete and usable
in a test environment, but not necessarily bug-free
• It is the final chance to get verification from the customers that the
tradeoffs made in the final development are coher
• Testers and users will perform this testing
Beta Testing
12/18/23 25