The document discusses fundamentals of software testing, noting that testing aims to verify software meets requirements and find bugs by testing in different conditions, and that a good test has a high probability of finding errors. It also outlines characteristics of testable software like being operable, observable, controllable, decomposable, simple, stable, and understandable.
Download as PPTX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
27 views
Lecture 3.2.3 Testing Fundamentals
The document discusses fundamentals of software testing, noting that testing aims to verify software meets requirements and find bugs by testing in different conditions, and that a good test has a high probability of finding errors. It also outlines characteristics of testable software like being operable, observable, controllable, decomposable, simple, stable, and understandable.
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 8
UNIVERSITY INSTITUTE OF COMPUTING
UNIT-3 Bachelor of Computer Applications Software Engineering (21CAT-312/21SCT-312/22CAT-213/22SCT-213)
DISCOVER . LEARN . EMPOWER
Topics to be covered • Software Testing Fundamentals Software Testing • Introduction : Software testing can be stated as the process of verifying and validating whether a software or application is bug-free, meets the technical requirements as guided by its design and development, and meets the user requirements effectively and efficiently by handling all the exceptional and boundary cases. • The process of software testing aims not only at finding faults in the existing software but also at finding measures to improve the software in terms of efficiency, accuracy, and usability. It mainly aims at measuring the specification, functionality, and performance of a software program or application. Software Testing • Software testing can be divided into two steps: 1. Verification: it refers to the set of tasks that ensure that the software correctly implements a specific function. • 2. Validation: it refers to a different set of tasks that ensure that the software that has been built is traceable to customer requirements. Testing Fundamentals • The goal of testing is to find errors, and a good test is one that has a high probability of finding an error. The product should be testable. “Software testability is simply how easily a computer program can be tested.” Testability exhibits following characteristics:-
1. Operability:- If a system is designed and implemented with quality in mind,
relatively few bugs will block the execution of tests. 2. Observability:- “What you see is what you test.” Inputs provided as part of testing produce distinct outputs. Testing Fundamentals 3. Controllability:- “The better we can control the software, the more the testing can be automated and optimized.” All possible outputs can be generated through some combination of input. 4. Decomposability:- By controlling the scope of testing, we can more quickly isolate problems and perform smarter retesting. 5. Simplicity:- “The less there is to test, the more quickly we can test it.” The program should exhibit functional simplicity; structural simplicity, and code simplicity. Testing Fundamentals 6. Stability:- “The fewer the changes, the fewer the disruptions to testing.”
7. Understandability:- “The more information we have, the smarter we will