07.01.2013 Views

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

15 Case Studies 459<br />

abstract entities (states, operations etc.) of the model and concrete <strong>in</strong>structions<br />

for the SUT’s test platform. By do<strong>in</strong>g so, the tc-translator can easily be adjusted<br />

for different test platforms. Often one operation <strong>in</strong> the model is a macro for the<br />

tc-translator and is substituted by many <strong>in</strong>structions at concrete level (communication<br />

abstraction). Furthermore the table may specify how to determ<strong>in</strong>e the<br />

precise tim<strong>in</strong>g of operations <strong>in</strong> a concrete test case if the test model abstracts<br />

from tim<strong>in</strong>g issues.<br />

Other approaches pre-process the abstract test case before they translate<br />

them. For example, Dush<strong>in</strong>a et al. [DBG01] remove all variables of the abstract<br />

test sequence not correspond<strong>in</strong>g to <strong>in</strong>puts of the SUT from the generated test<br />

sequence. Furthermore they extend the test sequence with reset <strong>in</strong>structions<br />

before it translated <strong>in</strong> micro code.<br />

15.8 Test Execution and Test Evaluation<br />

In general, a simulation environment or a test framework (we call it test platform)<br />

of the SUT executes and evaluates the concrete test cases. A test case is evaluated<br />

to the verdicts pass or fail. Pass means that SUT conforms with the abstract<br />

test model restricted to the behavior specified by the executed test case. Fail<br />

means the reverse, i.e., an error was detected dur<strong>in</strong>g test case execution. Clarke<br />

et al. [CJRZ01] <strong>in</strong>troduce <strong>in</strong> addition to pass and fail a third verdict called<br />

<strong>in</strong>conclusive. Inconclusive means that test execution reached a po<strong>in</strong>t where no<br />

error has occurred but the test purpose cannot be satisfied any more.<br />

Test evaluation is based on a abstraction/concretization relation between the<br />

traces of the abstract test model and the concrete system runs of the SUT that<br />

has to be determ<strong>in</strong>ed. None of the reviewed papers def<strong>in</strong>es this relation explicitly.<br />

Only Bel<strong>in</strong>fante et al. [BFdV + 99] state that it is important to have it but do<br />

neither describe it nor declare it. Nevertheless this relation is <strong>in</strong>dicated implicitly<br />

<strong>in</strong> the literature by the description of the applied test evaluation method. We<br />

found the follow<strong>in</strong>g approaches:<br />

• The approach of Farchi et al. [FHP02] translates the complete abstract test<br />

case consist<strong>in</strong>g of <strong>in</strong>puts and expected outputs or observable states of the<br />

SUT. The abstract <strong>in</strong>puts are translated to concrete stimuli of the SUT.<br />

The abstract outputs and states are translated to executable verification<br />

statements (verdicts) which decide if the output of the SUT conforms with<br />

the test model or not. Thus the evaluation of the test is done at the concrete<br />

level with<strong>in</strong> the concrete test case.<br />

• The approaches of Philipps et al. [PPS + 03] and Dush<strong>in</strong>a et al. [DBG01]<br />

translate only the <strong>in</strong>puts of the abstract test case to concrete level. These<br />

concrete stimuli are <strong>in</strong>jected <strong>in</strong> the SUT by the test platform. The test<br />

platform monitors the outputs of the SUT, abstracts them to the abstract<br />

level of the test model and compares them with the expected outputs encoded<br />

<strong>in</strong> the abstract test case. Hence the test evaluation <strong>in</strong> done at the abstract<br />

level by compar<strong>in</strong>g the abstracted SUT outputs with the expected output of<br />

the test model.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!