Lec3-4 Flashcards
(13 cards)
Testing goals?
- To show to the developer and customer that the software is meeting it’s requirements
- To discover situations where the software is behaving in an undesirable way or does not conform to its specifications
What does the first goal of testing lead to?
Validation testing: You expect the system to perform correctly using a given set of test cases. A successful test shows that the system operates as intended.
What does the second goal of testing lead to?
Defect testing: Defect testing is concerned with rooting out undesirable system behavior such as system crashes, incorrect computations and data corruption.
Test cases in defect testing can be deliberately obscure and need not reflect how the system is normally used. A successful test is a test that makes the system
perform incorrectly and so exposes a defect in the system.
What is verification
VERI-PRO-RI
Are we building the product right?
What is validation
VALI-RI-PRO (Valley repo deez cars)
Are we building the right product?
Aim of V&V
To establish confidence that the system is fit for purpose. Depends on software purpose, user expectations and marketing environment.
Software purpose: The level of confidence depends on how critical the software is to an organization.
User expectations: Users may have low expectations of certain kinds of software. (this is worthless don’t even memorize it)
Marketing environment: Getting a product to market early may be more important than finding defects in the program.
What are inspections? (V&V checking approach)
Concerned with analysis of the static system representation to discover problems (static verification)
What is software testing? (V&V checking approach)
Concerned with analyzing and observing the product’s operational behavior (dynamic verification)
Unit testing
Where individual program units or object classes are tested
Component testing
Where several individual units are integrated to create
composite components. Component testing should focus on testing component interfaces.
System testing
Where some or all of the components in a system are
integrated and the system is tested as a whole.
White box testing
Deriving tests from the source code internals of the software
Black box testing
Deriving tests from external descriptions of the software i.e. testing from the outside without knowledge of how the software works internally