Automation (Chapter 3) Flashcards
What is Test Automation?
The use of software to control the execution of tests, the comparison of actual outcomes and predicted outcomes, the setting up of test preconditions and other test control and test reporting functions.
What does Test Automation help to reduce?
Helps reduce costs, reduce the cost of regression testing, reduce human error, and reduce the variance in test quality from different individuals.
What is Software Testability?
How hard is it to find a fault in software.
The degree to which a system or component facilitates the establishment of test criteria and the performance of tests to determine whether those criteria have been met.
Software Testability is dominated by what two practical problems?
- How to provide the test values to the software.
2. How to observe the results of test execution.
What is Observability?
Observability deals with how easy it is to observe the behavior of a program in terms of its outputs, effects on the environment and other hardware and software components.
What is Controllability?
Controllability deals with how easy it is to provide a program with the needed inputs in terms of values, operations, and behavior.
Data Abstraction reduces what two key terms?
Data Abstraction reduces controllability and observability.
What is a Test Case?
A Test Case is a multiple artifact with a definite structure.
What are Test Case Values?
Input values needed to complete an execution of the software under test.
What are Expected Results?
Results that will be produced by the test if the software behaves as expected.
A Test Oracle uses what key term?
A Test Oracle uses expected results to decide whether a test passed or failed.
What are Prefix and Postfix values?
Prefix: inputs necessary to put the software into the appropriate state to receive the test case values.
Postfix: any inputs that need to be sent to the software after the test case values are sent.
P.S. Both deal with test case values, just what happens before and after.
What are Verification Values and Exit Values?
Verification Values: values that are needed to see the results of the test case values
Exit Values: values that are needed to exit/terminate the program or return it to a stable state.
What is a Test Case?
The test case values, prefix values, postfix values, and expected results necessary for a complete execution and evaluation of the software under test.
What is a Test Set?
A set of test cases.
P.S. Also know as a Test Suite.