Customising the testing protocol

Customising the testing protocol

A set of methods are provided for customization:

// initial setup before starting SUT test
01. void initialize(Settings settings)

// clean-up tasks for new test runs
02. void beginSequence()

// any action to be taken during SUT execution
03. SUT startSystem()

// step-by-step STATE of the SUT, with an attached ORACLE
04. State getState(SUT system)

// determines the STATE ORACLE verdict
05. Verdict getVerdict(State state)

// the set of available ACTIONs from a SUT’s STATE
06. Set deriveActions(SUT system, State state)

// which ACTION should be PERFORMED next (i.e. random, Search-Based)
07. Action selectAction(State state, Set actions)

// runs an ACTION from a SUT STATE, with return code (success?)
08. boolean executeAction(SUT system, State state, Action action)

// determines the stopping criteria
09. boolean moreActions(State state)

// finishing tasks for an ending test run
10. void finishSequence(File recordedSequence)

// determines whether to continue SUT testing (additional runs)
11. boolean moreSequences()