SDD - Testing Flashcards
What does Reliable, Robust, and Portable mean in computing
- Reliable
– produces the correct output from the input - Robust
– Copes with the invalid data
– Deals with unexpected conditions - Portable
– Runs on different platforms such as Linux, windows, osx, etc
What are the 3 aspects of testing
Pierce slapped childish_gambino
Plan
Systematic
Comprehensive
What is the purpose of testing
- Is it fit for purpose does it meet the specification?
- Is it robust?
- Is it reliable?
What is the purpose of the 3 testing aspects?
-
Plan
– What is it that we want to test?
e.g. functions, data, and outputs -
Systematic
– Testing as many conditions that are possible -
Comprehensive
– One way is to ensure that you use a wide range of test data.
– Modules can be tested individually
– Modules can also be tested to see if they integrate well
What are the test data types?
Normal, Extreme, and Exceptional.
- Normal
– This is data that the program should be expected to use in normal operation - Extreme
– This type of data is at the edge of what’s acceptable e.g. high and low limits as well as boundaries - Exceptional
– This type of data is invalid. Robust programs should reject this.
What is a testing table?
Shows some inputs, the expected output, and the received/actual output as well as a comment on each output.
Phases of testing Alpha and Beta
What are the differences?
-
Alpha Testing
– Internal testing
– Pre-release
– Done by the development team -
Beta Testing
– Testing a program in working conditions
– Done by members of the public or an independent test group
– Feedback to the development team
What is in a test plan
- What is the use of a test plan
- A test plan ensures that all functional requirements of the program are tested.
*What are your test cases
- A test case is going to be under the user interaction with your system.
*What test data are you going to use?
- What data will you use in your system to ensure that your tests are valid.
What are the Debugging Techniques?
- Dry Runs
- This is when you manually go through each line of code one by one, without executing the program.
- This is used when to find logic errors and to aid in making a trace table
- Trace tables
- A trace table includes multiple columns, the line number, and then the name of all the variables in the program.
- Breakpoints
- Breakpoints are used to stop the execution at specified lines. This is mainly used in more serious software.
- This is used when a select code is being tested to see if its input gives out the intended output
-
Watchpoints
Watchpoints are similar to breakpoints but their assigned variables
Watchpoints stop the execution of a program once the contents of a specific variable/s meet a particular condition/s