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.

20 Model-Based Test<strong>in</strong>g – A Glossary<br />

Alexander Pretschner and Mart<strong>in</strong> Leucker<br />

Overview The idea of model-based test<strong>in</strong>g is to compare the I/O behavior of a<br />

valid behavior model to that of a system one wants to test (the system under<br />

test, SUT). In order to do so, a few I/O traces of the model are fixed. Pick<strong>in</strong>g<br />

“<strong>in</strong>terest<strong>in</strong>g” traces is a demand<strong>in</strong>g task, and it is reflected <strong>in</strong> test purposes and<br />

test case specifications. The <strong>in</strong>put part of a test case is applied to the SUT, and<br />

the output of the SUT is compared to the output of the model (this expected<br />

output is part of the the test case).<br />

S<strong>in</strong>ce models are abstractions, or simplifications, it may be necessary to<br />

bridge the different levels of abstraction between the model and the SUT. Before<br />

be<strong>in</strong>g applied to the SUT, the <strong>in</strong>put part of the test case may have to be<br />

concretized to its level of abstraction. Output of the SUT may well have to be<br />

abstracted before be<strong>in</strong>g compared to the output of the test case (that is, output<br />

of the model). Sometimes it is the case that the levels of abstraction are identical.<br />

When consider<strong>in</strong>g real-time or cont<strong>in</strong>uous systems, then often it is not possible<br />

to predict the exact values. Instead, small deviations (so-called jitter) may be<br />

acceptable <strong>in</strong> both the time and the value doma<strong>in</strong>s. A test case then represents<br />

a whole family of runs of the SUT.<br />

Term<strong>in</strong>ology<br />

• Test case A test case is a structure of <strong>in</strong>put and expected output behavior.<br />

– The structure is a f<strong>in</strong>ite sequence <strong>in</strong> case of (quasi-)determ<strong>in</strong>istic systems.<br />

A test case then corresponds to one or many <strong>in</strong>tended runs of the SUT,<br />

which is a consequence of acceptable jitter <strong>in</strong> the time and value doma<strong>in</strong>s<br />

(this is why we call these systems quasi-determ<strong>in</strong>istic, or determ<strong>in</strong>istic,<br />

for short).<br />

– It is tree-like (of possibly <strong>in</strong>f<strong>in</strong>ite branch<strong>in</strong>g but f<strong>in</strong>ite length) <strong>in</strong> case of<br />

nondeterm<strong>in</strong>istic systems. As <strong>in</strong> the case of determ<strong>in</strong>istic systems, each<br />

path <strong>in</strong> the tree corresponds to one or many runs of the SUT because of<br />

jitter.<br />

• Test data Test data is the <strong>in</strong>put part of a test case.<br />

• Test suite A test suite is a set of test cases. The notion of a test suite may<br />

comprise a set of execution conditions: assumptions on the environment, configuration<br />

of the SUT, etc. Test suites may be <strong>in</strong>f<strong>in</strong>ite or even uncountable.<br />

However, when tests are actually performed, only a f<strong>in</strong>ite amount of <strong>in</strong>put<br />

can obviously be applied.<br />

• Test purpose A test purpose is a property one wants to test. Examples <strong>in</strong>clude<br />

“conformance”, “statement coverage”, “<strong>in</strong>variant ψ”. These properties<br />

can be expressed <strong>in</strong>formally or formally. In general, they cannot directly be<br />

used for test<strong>in</strong>g a system because<br />

M. Broy et al. (Eds.): Model-Based Test<strong>in</strong>g of Reactive Systems, LNCS <strong>3472</strong>, pp. 607-609, 2005.<br />

© Spr<strong>in</strong>ger-Verlag Berl<strong>in</strong> Heidelberg 2005

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

Saved successfully!

Ooh no, something went wrong!