0% found this document useful (0 votes)
8 views

Week02 Lecture04

This document discusses key concepts in software testing and quality assurance. It defines stakeholders as anyone affected by the system, including programmers, test engineers, project managers, and customers. The objectives of testing are to ensure the system works as intended, find faults, and reduce risks of failure and costs. An expected outcome is what should happen when a test is run, while an oracle determines if the actual outcome matches the expected one. Complete testing all possible inputs is impossible for most systems due to large input domains, complex designs, and inability to test all environments. Test cases are selected by analyzing requirements, source code, input/output domains, how the system will be used, and types of faults.

Uploaded by

Niloy Dev
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Week02 Lecture04

This document discusses key concepts in software testing and quality assurance. It defines stakeholders as anyone affected by the system, including programmers, test engineers, project managers, and customers. The objectives of testing are to ensure the system works as intended, find faults, and reduce risks of failure and costs. An expected outcome is what should happen when a test is run, while an oracle determines if the actual outcome matches the expected one. Complete testing all possible inputs is impossible for most systems due to large input domains, complex designs, and inability to test all environments. Test cases are selected by analyzing requirements, source code, input/output domains, how the system will be used, and types of faults.

Uploaded by

Niloy Dev
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 8

Software Testing & Quality

Assurance

CSE-453

Lecture - 04
Stakeholder
Any person or organization who is affected by the system in some way and so who has
a legitimate interest

Stakeholder types for testing process


• Programmer
• Test engineers
• Project manager
• Customers
Objective of Testing
• It does work
 To show that the system works (basic functions) according to the programmers
satisfaction
• It does not work
 After achieving satisfaction up to a certain degree, to show that the system fails in
order to find faults
• Reduce the risk of failure
 A higher level objective of performing tests is to bring down the risk of failing to
an acceptable level.
• Reduce the risk of costing
 The highest level of objective of performing tests is to produce low-risk software
with fewer number of test cases.
Expected Outcome & Oracle
An outcome of program execution is a complex entity that may include the following:
• Values produced by the program:
Outputs for local observation (integer, text, audio, image)
Outputs (messages) for remote storage, manipulation, or observation
• State change:
State change of the program
State change of the database (due to add, delete, and update operations)
• A sequence or set of values which must be interpreted together for the outcome
to be valid
Expected Outcome & Oracle
Ideally, the expected outcome of a test should be computed while designing the test
case. In other words, the test outcome is computed before the program is executed
with the selected test input

Oracle
• An important concept in test design is the concept of an oracle.

• An oracle is any entity—program, process, human expert, or body of data—that


tells us the expected outcome of a particular test or set of tests
Complete Testing
Complete, or exhaustive testing means there are no undiscovered faults at the end of
the test phase. All problems must be known at the end of complete testing. For most
of the systems, complete testing is near impossible because of the following reasons:

• The domain of possible inputs of a program is too large to be completely used in


testing a system. The program may have a large number of states. There may be
timing constraints on the inputs

• The design issues may be too complex to completely test. The design may have
included implicit design decisions and assumptions

• It may not be possible to create all possible execution environments of the system
Sources of Information for Test Case Selection
In order to generate effective tests at a lower cost, test designers analyze the
following sources of information:

• Requirements and functional specifications


• Source code
• Input and output domains
• Operational profile
• Fault model
THANK YOU

You might also like