Software - Testing and Evaluation Flashcards
What are the 3 types of errors Testing can identify
Syntax
Execution
Logic error
What is a syntax error?
Mistakes in the grammar of the programming language. Those are reported by the translator programme
What is an Execution error?
Detected when the program is ran (eg not by the translator). Example is division by zero or attempting to read from a disc & the disc is not present
What is a logic error?
The programme itself is fine but there is something wrong in the logic which means the results are not as expected. Example adding instead of multiplying
What are the 4 main testing techniques
Dry Runs, Trace Tables, Breakpoints, Watchpoints
What are the main purposes of testing? (4)
To identify errors
To ensure that software is fit for purpose
To ensure that the code is efficient
To ensure that the code is maintable.
What is meant by the term Comprehensive Testing?
Comprehensive testing describes the process of testing normal, exceptional and extreme data.
Normal - Data within the range of which the program is expected to work with.
Extreme – Data at the boundaries of what is acceptable.
Exceptional – Unexpected data.
What is a Dry Run?
The programmer takes on the role of the computer, and manually work through the code following the value of a variable to check that it was used and updated as expected. A dry run is used to identify logic errors in code.
There is no software involved in this process.
What is a Trace Table?
Trace tables are used to allow programmers to trace the value of variables as each line of code is executed.
The values of the variables are displayed in a table and assist the programmer in identifying any potential errors.
What’s a breakpoint?
A breakpoint is a point in the program where the code will stop executing.
The contents of the variables in the program can then be examined.
What’s a watchpoint?
A watchpoint is a conditional breakpoint that halts program execution when a conditions is met, such as a variable being less than a certain value.
When is a software deemed Fit for Purpose?
Software is deemed fit for purpose it it meets the requirements determined during the analysis phase.
What makes the software Efficient? (3)
- Does the program make use of repetition (loops) where possible to reduce the amount of code?
- Does the program make use of arrays instead of declaring many individual variables?
- Does the program make use of selection statements that will only make comparisons until a solution is reached?
What is meant by usability of software?
Usability is a term to describe how intuitive the software is from a user’s point of view. In other words, can the user perform tasks quickly and with few errors?
What is meant by maintainability and how do you achieve it?
Software should be easily understood by another programmer and should easy to modify/adapt. This achieved by ensuring:
- Readability – meaningful identifiers, internal commentary, indentation, white space.
- Modularity – by using sub-programs effectively so that changes to one subprogram only affect that sub-program.