syntax- error used in the programming
language- e.g: missing braces, no
semi-colon, missing parts of constructs
logical- caused by the mistakes in the
design of the program, code will run but
will not give the right results
run-time- happens while the program is
running, syntax is fine but when run an
error is found due to mistakes in the
algorithm or an external reason- e.g.:
out of memory, divide by 0...
testing
black box test data can be:
NORMAL- very surely and completely within
the range (should be accepted)- makes sure
that the program performs properly,
BORDERLINE- on the border of range
(v. important)- most errors are when
borderline data is not accepted,
INVALID- outside the range (should be rejected),
should check all data to make sure program works
properly
testing strategies:
BLACK BOX: inputs tested to
see if they produce the
outputs that should be, done
by customers, all parts of test
data is tested
What is done: requirements and
specifications of the system examined, data
checked to see if expected outputs are git,
test cases created and executed, outputs
compared, defects fixed and retested
Finds: incorrect/ missing
functions, interface errors, data
structure errors, performance
errors, initialisation and termination
Advantages: does not need to
know coding, less bias (third
party), test cases can be tested
as soon as spec is produced
Disadvantages: way program works is
not considered, test cases are difficult to
design, time consuming to test every
input, white box has to still be carried out
WHITE BOX: testers test
each line of code for logic
and accuracy, normally tests
extremes, done manually or
debugging software
Advantages: helps optimize the
code, can test effectively as it is
easy to find the best data to use,
tested by programmer so they
know the program well
Disadvantages: Uses
specific programming
knowledge, Only works if
the programmer know
what the program actually
does, Does not account
for errors that are created
from omission
ACCEPTANCE: done when the
software is complete, programmer
has to prove that the program fits all
of the customers specification, can
be done as alpha or beta testing
ALPHA: done in the
company where
employees who did
not produce software
test it
Advantages: uses both
black box and white box
testing, problems are
sorted immediately
Disadvantages: doesn't check
reliability robustness and security,
requires testing environment,
software might not be complete so
might still contain errors
BETA: privileged customers
test the software and give
back constructive criticisms
Advantages: checks
reliability robustness
and security, can be
done anywhere,
software virtually
complete but might
sill have bugs
Disadvantages:uses only black
box testing, problems implemented
in future versions of software
dry runs(trace tables)
put each variable and track
the value of each variable
debugging tools
translator diagnostics- points out if
there are any errors in the code by
saying which part of which line is
wrong- error messages - syntax error
Break point- tell it to pause at a
certain point in the code- can go
through line by line after- can trace
variables in a trace table- double
click to add it- logical or run time
stepping- going through the code
line by line- can do it at your speed-
check variables- logical or run time
variable checks- trace
tables- look at variables
and their value at each
point- can look at
patterns to find errors-
logical and run time error
purpose of an installation routine
Copy program
from CD to
computer
Copy any
data files
from the CD
to computer
Copy and registered
any library routines
which are needed
from CD to computer
Check for any
dependencies
Check for space
Check for
compatibility
Register the
program in
the computer
Enable the
program to be
uninstalled later
Initial user
configuration is
saved in a file
Provide an icon or
shortcut so that the
program can be run easily
Programs may need extracting
from a compressed file