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/ 11
Software Testing: Terminologies and Processes
Meenakshi D’Souza
International Institute of Information Technology
Bangalore. Testing goals based on process maturity
Organizations tend to work with one or more of the following
levels: Level 0: There is no difference between testing and de-bugging. Level 1: The purpose of testing is to show correctness. Level 2: The purpose of testing is to show that software doesn’t work. Level 3: The purpose of testing is not to prove anything specific, but to reduce the risk of using the software. Level 4: Testing is a mental discipline that helps all IT professionals develop higher quality software. Testing process: Level 0 thinking
Testing is the same as debugging.
Does not distinguish between incorrect behavior and mistakes in the program. Does not help develop software that is reliable or safe. Testing process: Level 1 thinking
Purpose is to show correctness. Correctness is impossible to
achieve. What do we know if no failures? Good software or bad tests? Test engineers typically do not have: Strict goal Real stopping rule Formal test technique Testing process: Level 2 thinking
Purpose is to show failures.
Looking for failures is a negative activity. Puts testers and developers into an adversarial relationship. Typically, many software companies are in this level. Testing process: Level 3 thinking
Testing can only show the presence of failures.
Whenever we use software, we incur some risk. Risk may be small and consequences unimportant. Risk may be great and consequences catastrophic. Testers and developers cooperate to reduce risk. Testing process: Level 4 thinking
A mental discipline that increases quality. Testing is only one
way to increase quality. Test engineers can become technical leaders of the project. Primary responsibility to measure and improve software quality. This course vs. Testing process levels
We will deal with technical aspects of testing that will help
with level 3 and 4 thinking. This course will help you write test objectives. Define/understand how to plan and achieve coverage in code, design and requirements. Teach you the algorithmic aspects of testing. Controllability and Observability
Two important concepts in software testing.
Controllability: Controllability is about how (easy it is) to provide inputs to the software module under test in terms of reaching the module and running the test cases on the module under test. Observability: Observability is about how (easy it is) to observe the software module under test and check if the module behaved as expected. Module under test can be anywhere!
Module/method under test can be hidden deep in the code and
may not accept any inputs directly. Techniques: Observability and Controllability
Mostly done manually or using the test automation tool.
(Ebook) 90 Minutes in Heaven: A True Story of Death and Life by Don Piper & Cecil Murphey ISBN 9780800731663, 9780800759490, 0800759494, 0800731662 - Download the full ebook version right now