Page 214 - Embedded Microprocessor Systems Real World Design
P. 214
Verify timekeeping.
Verify keypad operation and sensing.
Verify time rollover and on/off switching.
Verify override operation.
Verify water low sensor operation.
Verify time set.
Fortunately, if you have a good requirements specification, you also have a good
start on the functional test requirements. The first thing you must do in functional
testing is make sure all requirements are met. Some of these are difficult to prove-
the “minimum switches and knobs” requirement for the pool timer is a good
example-but the list of requirements is a good starting point for verifying the
design. You can get software that tracks requirements in a document and you can
carry the tracking through the test procedure to verify that the requirement was
satisfied.
The problem inherent in any minimal test plan like this is that it often omits
several important steps. When you verify timekeeping, do you verify only that the
time decrements, or that it decrements at the right rate and rolls over at the right
time? Do you check at least two cycles to be sure that nothing hangs up? A more
comprehensive test plan might have the following tasks:
Vmjj timekeeping:
Verify that time decrements correctly.
Verify timekeeping rate (accuracy in a real product would probably be speci-
fied in the requirements).
Vmfi keypad operation and sensing:
Keys are sufficiently debounced.
All keys except SET are ignored in powerfail mode.
Vmjj time rollover and on/off switching:
ON rollover, switch to OFF time.
OFF rollover, switch to OFF time.
Verify at least three cycles.
Vhjj override operation:
ON override in OFF timing.
OFF override in ON timing.
ON override in ON timing.
OFF override in OFF timing.
System Integration and Debug 195