Software DD (Testing) Flashcards

Types of testing, Types of errors, Debugging

You may prefer our related Brainscape-certified flashcards:
1
Q

Normal Data

A

Data that the program should be expected to use in normal operation
(accepted)

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Extreme Data

A

Data at the edge of what is acceptable, such as high and low limits or boundaries
(accepted)

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Exceptional Data

A

This is invalid data. Robust programs should reject this
(not accepted)

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Syntax error

A

These are mistakes in the programming ‘grammar’ e.g. Forgetting to put a semi colon or close a bracket.
Programs will fail translation so won’t run

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Execution error

A

These are errors detected during run-time. Divide by zero etc.
Programs will usually fail during runtime

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Logic error

A

These are errors in the design of the program
Passing the wrong data into a function
Programs will usually fail during runtime or produce incorrect output.

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

4 main Debugging Techniques

A
  • Dry Runs
  • Trace Tables/Tools
  • Breakpoints
  • Watchpoints

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Dry Run

A

A dry run is when you manually stepping through the lines of code without the need for executing the program. Can be useful for logic errors.
A dry run may also be used in conjunction with a trace table.

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Trace Table

A

When you create a trace table you list the variables and then populate it as you work through the algorithm or after each iteration through a loop e.g.

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Breakpoints

A

You set breakpoints to stop execution of the code at specific lines of code. At this point the contents of variables can be examined.

This can be a method to ascertain if a piece of code is actually being executed, obviously useful for debugging conditional statements. As you can check if the variables match the conditions you think they do.

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Watchpoints

A

Watchpoints are similar to breakpoints but they are assigned to variables. They then stop the execution of the program when a variable changes or when the contents of a specific variable(s) or expression meets a particular condition. This can be at any point in the execution of the code.

This can be useful for example if file import is failing at record 1200/2000 you could stop the program when the counter variable is equal to 1199 so that you can examine variable contents at that point.
Or you may want to halt the program only when a variable changes.

From RGC Aberdeen website

How well did you know this?
1
Not at all
2
3
4
5
Perfectly