TPT User's Guide - PikeTec
TPT User's Guide - PikeTec
TPT User's Guide - PikeTec
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>TPT</strong> <strong>User's</strong> <strong>Guide</strong> Page 73<br />
14 Debugging of Test Automatons<br />
Test-case models built with <strong>TPT</strong> can form very complex and comprehensive automatons. If the<br />
behaviour of an automaton differs from the expected behaviour or if a runtime error occurs,<br />
retrieving the cause of the observed behaviour may be quite difficult. The interaction of a large<br />
number of external elements and values provided by the system under test, and it’s the<br />
complex environment can make it virtually impossible to trace and analyze an automaton’s<br />
behaviour without the appropriate tool support.<br />
With this in mind <strong>TPT</strong> comes with a plug-in, that serves the sole purpose of tracing and<br />
analyzing an automaton’s runtime behaviour and hence provides support for systematic<br />
debugging.<br />
This plug-in enables a user to precisely trace a test case’s execution. In doing so just looking<br />
closely at the test results will usually– and especially for complex test automatons – help very<br />
little. Instead more detailed information about the internal state of the automaton at a certain<br />
point of its execution is often needed, for example, to analyze state transitions and their<br />
“timing”. This could be achieved by step-wise execution of the automaton. However, since<br />
running a test case automaton may require several thousand execution steps, the debugging<br />
provides several features to analyze one or more states of a paused automaton, to examine and<br />
analyze its internal state.<br />
14.1 Basic modules of debugging<br />
It is a fundamental characteristic of <strong>TPT</strong> that test cases are described independently of a specific<br />
test environment to run on. This does not only apply to modelling a test case but is used for<br />
execution as well. To achieve this the <strong>TPT</strong> execution machine (<strong>TPT</strong>-VM) may easily be integrated<br />
with various proprietary simulation tools and environments. However, proprietary platforms<br />
often impose restrictions that limit the control over a test case’s runtime. A typical restriction is<br />
that the execution of a test case may not be paused.<br />
Therefore the process of debugging a test case is carried out in two separate steps: First, the<br />
test case to be debugged is executed on its target environment as usual. Then the recorded<br />
data will be used to execute the same test once again. This time however, “offline” using the<br />
stand-alone execution environment which comes with the <strong>TPT</strong>-VM. The system under test as<br />
well as the test case’s execution environment will be simulated using the recorded data.