Page 203 - DCAP405_SOFTWARE_ENGINEERING
P. 203
Software Engineering Deepak Mehta, Lovely Professional University
Notes Unit 12: Testing Tactics
CONTENTS
Objectives
Introduction
12.1 White-box testing
12.1.1 White-box Testing Techniques
12.2 Black-Box Testing
12.2.1 Black-box Testing Techniques
12.3 Fault-based Testing
12.4 Summary
12.5 Keywords
12.6 Review Questions
12.7 Further Readings
Objectives
After studying this unit, you will be able to:
Describe black-box testing
Recognize white-box testing
Scan flow graph testing
Explain equivalence partitioning
Comprehend boundary value analysis
Examine Fault based testing
Introduction
Software testing is any activity aimed at evaluating an attribute or capability of a program or
system and determining that it meets its required results. Although crucial to software quality
and widely deployed by programmers and testers, software testing still remains an art, due to
limited understanding of the principles of software. The difficulty in software testing stems
from the complexity of software: we can not completely test a program with moderate
complexity. Testing is more than just debugging. The purpose of testing can be quality assurance,
verification and validation, or reliability estimation. Testing can be used as a generic metric as
well. Correctness testing and reliability testing are two major areas of testing. Software testing
is a trade-off between budget, time and quality.
12.1 White-Box testing
White-box testing or glass-box testing is a test case design method that uses the control structure
of the procedural design to obtain test cases. Using this methodology, a software engineer can
come up with test cases that guarantee that all independent paths within a module have been
196 LOVELY PROFESSIONAL UNIVERSITY