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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

13 Real-Time and Hybrid Systems Test<strong>in</strong>g 359<br />

systems) dense values. Therefore, the algorithms needed for generat<strong>in</strong>g test<br />

cases have to be chosen carefully to ga<strong>in</strong> a mean<strong>in</strong>gful and manageable test<br />

suite.<br />

• Test Monitor<strong>in</strong>g Aga<strong>in</strong>, the important factor is time. For monitor<strong>in</strong>g the<br />

execution of test cases, not only <strong>in</strong>puts and outputs to and from the SUT<br />

are relevant, also the time at that these <strong>in</strong>puts and outputs occur must be<br />

logged adequately.<br />

• Test Evaluation Test evaluation also depends on time. Not only the correct<br />

order of <strong>in</strong>puts and outputs is needed for decid<strong>in</strong>g if a test has failed<br />

or passed, the correct tim<strong>in</strong>g is also a crucial factor. An unavoidable fuzz<strong>in</strong>ess<br />

for measur<strong>in</strong>g time must be considered. The same holds for measur<strong>in</strong>g<br />

dense-valued data with respect to hybrid systems.<br />

• Test Driver For real-time systems, the test driver must be capable of<br />

giv<strong>in</strong>g <strong>in</strong>puts at the correct time, i. e. it must be fast enough for the SUT.<br />

For hybrid systems, the same holds for dense data values, e. g. differential<br />

equations have to be processed fast enough to model the valuation of data<br />

values over time. If analog, i. e. dense-valued, data is expected as <strong>in</strong>put from<br />

the SUT, this must be generated. The most important function of the test<br />

driver for real-time and hybrid systems is therefore bridg<strong>in</strong>g the gap between<br />

the abstract model and the correspond<strong>in</strong>g implementation, i. e. the SUT. On<br />

the one hand, it has to concretize the <strong>in</strong>put from the model to the SUT. On<br />

the other hand, it has to abstract the output from the SUT for the test<br />

monitor and test oracle.<br />

All <strong>in</strong> all, we can identify two ma<strong>in</strong> issues for test<strong>in</strong>g real-time and hybrid systems:<br />

• Build<strong>in</strong>g manageable and mean<strong>in</strong>gful models from the SUT.<br />

• F<strong>in</strong>d<strong>in</strong>g manageable and mean<strong>in</strong>gful test suites.<br />

Test oracle, test monitor, and test driver are more a challenge <strong>in</strong> implementation.<br />

They have <strong>in</strong> common that they depend on the model and the test case<br />

generation to work efficiently. Therefore, the focus <strong>in</strong> the follow<strong>in</strong>g chapters is<br />

on model<strong>in</strong>g and test case generation.<br />

13.3 Model-Based Test Case Generation<br />

The aim of model-based test<strong>in</strong>g is to derive test cases from an application model<br />

that is an abstraction of the real behavior of the SUT. As described <strong>in</strong> Section<br />

13.2.2, time can be abstracted either as discrete or dense time for real-time<br />

systems. Values are considered discrete. For hybrid systems, the time doma<strong>in</strong> is<br />

dense just as the value doma<strong>in</strong>. There are approaches for model<strong>in</strong>g each of these<br />

systems as well as test case generation algorithms based on these models. These<br />

are described <strong>in</strong> the follow<strong>in</strong>g.

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

Saved successfully!

Ooh no, something went wrong!