TPT (Software)

TPT (Time Partition Testing ) is a method and a software tool the company PikeTec for automated software testing or software verification of embedded systems. Most embedded systems are tested using test scripts - at TPT test cases are modeled graphically. TPT is a model-based testing tool for module test, integration test, system test and regression test. TPT also supporting testing of control systems and systems with continuous behavior (real-time systems that interact with their environment, physical values ​​or signals that are received or sent in discrete time in a time interval). Most control and regulation systems belong to this class of systems.

TPT includes the following tasks:

  • Test case modeling,
  • Test procedure ( fully automatic) on different platforms with eg MATLAB / Simulink, ASCET, TargetLink, C code or using communication standards such as CAN or LIN
  • Test Evaluation ( fully automatic)
  • Test documentation ( fully automatic)
  • Test Management
  • Traceability of requirements from Telelogic DOORS and test cases

Reactive tests

With TPT each test case can react specifically to the system behavior during the test, for example, to accurately engage upon the occurrence of a particular state and to provoke further test relevant system states. For example, to a motor control in the idling speed is exceeded, a sensor failure can be simulated in order to test the behavior of the engine control in this situation, must be in the description of the test, if the event " idle speed exceeded" may be reacted.

The reactivity with the real- time capability of the test execution allows the programming of discrete-time dynamic systems such as the implementation of filter functions and control algorithms with TPT.

Graphical test case modeling

The sequence of test cases is graphically modeled using special state machine or state transition diagrams with TPT. This description technique for test cases is particularly obvious for the application field of embedded systems, because test cases always consist of single, successive steps. The test cases are thus intuitively readable, even if they are very complex.

Simple sequences (test step lists)

Simple sequences of test steps such as signal set (set channel), signal ramp (ramp channel), parameters ( set parameters ), wait ( wait) can be easily modeled with test steps. In the sequences of queries for the expected test results for the test evaluation can be inserted as a test oracle. The test sequences can be combined with other modeling methods.

Direct signal definition ( Direct Definitions)

In addition to the " test -step lists " are at the lowest level in the hierarchy point signal definitions, so-called " Direct Definitions" possible. Signals are defined in the form of modeling as a function of time, the past history and other signals. The definition of formulas in "C -Style " notation is possible in addition to the import of measurement data or a manual signal editor.

Systematic test cases

TPT has been specially developed for the test of the continuous and reactive behavior of embedded systems. Even for very complex systems, whose thorough test requires a large amount of test cases, TPT assured by his systematic approach to the test case specification overview and thus makes it possible to identify weaknesses in the system to be tested with an optimal amount of test cases. The underlying idea of the structure of TPT is the separation of similarities and differences between the test cases: Most of the test cases have each other in their structural sequence very similar and differ "only" in a small but crucial details. TPT makes advantage of this fact by common structures are also modeled and shared. This can be avoided to a redundancy. On the other hand is very clearly stated in which the test cases are actually different - that is, what specific aspects they test each. Through this approach, the comparability of test cases and therefore the summary is significantly improved and the main focus of the tester on the essentials - the differentiating features of the test cases - steered. Due to the hierarchical structure of the test cases to test complex problems into sub-problems can be split, which the clarity and thus the quality of the tests also improved. Using these modeling techniques, the tester helps you to find the actually relevant cases, to avoid redundancies and to maintain an overview even with a large amount of test cases.

Test execution

TPT test cases are independent of their execution. The test cases are connected by a so-called virtual machine ( VM TPT ) or less on each platform and, if necessary automatically executed in real time. For the TPT -VM there are programming interfaces ( API) for C and. NET.

Examples of the application are Model in the Loop ( MiL ) with MATLAB / Simulink, TargetLink, ASCET, C programs, CAN, LIN ( with bus simulation ), EtherCAT, AUTOSAR components, INCA, LABCAR, Software in the Loop ( SiL ) and hardware in the Loop (HiL ).

For an analysis and measurement of test coverage is available, for example, C programs, a coupling to the Code Coverage Analyser Test Well ctc .

TPT can be used as a signal generator also for " trying out" the implementation during the development phase. By the ability to generate arbitrary signals TPT can also be used as a signal generator. In MATLAB / Simulink so that switches and signal generators can be replaced comfortable. The results are repeatable and lead to improved quality of development.

The test synchronous measuring ECU internal metrics via the ASAM - MCD- 3 interface. Thus, tools such as INCA or canape can be addressed, and the measurement results are for test case evaluation.

In the test procedure is a configurable graphical user interface with displays and controls available. This values ​​can be parallel to the test execution stimulated or viewed by the user in real time.

Programmed test evaluation

Test results must be evaluated. Doing a quality statements such as " true ", " false" or " uncertain " to be spent in the test documentation. Deviations from the desired behavior should be logged. In addition to manual evaluation and comparison with reference data (regression test) can be automatically evaluated with TPT test results. Rule-based evaluations. Temporal and functional behavior of the test object can thus be not only strictly quantitatively, but also qualitatively evaluated easily. A visual inspection after each test run is omitted.

The test evaluation, also called test assessment, based on recorded test data. Evaluations are carried out in well-defined time intervals, as in many cases, an evaluation of the results can only occur under certain conditions of entry. For example, a precondition that a light is on, the light is turned on.

For common and simple test evaluations are graphical user interfaces are available:

  • Monitoring of signal limits (Min / Max comparison)
  • Fault-tolerant comparison of signals with reference signals (regression test)
  • Investigation of discrete signal sequences
  • Rule-based studies after temporal trigger conditions
  • Integration of MATLAB scripts

For advanced studies is its own programming on Python basis. This programming language provides an extensive library for computing ready with signals. For example. filtering operations, monotony investigations, temporal queries, tests whether a condition is always or never occurs, or the definition of temporal intervals are possible. An evaluation otherwise obtained measurement results is also possible. The measurement data model internal TargetLink or Simulink signals as well as data from other measuring devices are automatically available in the test evaluation.

Test Management

TPT supports the following areas of test management:

  • Test cases ( test case modeling )
  • Test Planning
  • Test documentation
  • Progress bar across different releases
  • Traceability of requirements, test cases, test procedures and test results

Areas of application

TPT is mainly used in the automotive industry. The original idea came at Daimler AG and Mercedes Benz for their own vehicle development. The first versions of the test tool was already working there in 2000. Meanwhile, other car companies such as GM, Volkswagen, Audi, Porsche and BMW, as well as suppliers such as Bosch, Hella, TRW and Continental work with the test tool. Daimler itself has coordinated the development of TPT TPT years and thereby optimized for the automotive software industry.

Traceability of requirements

International standards for secure systems, such as IEC 61508, DO- 178B, EN 50128 and ISO 26262 require traceability of requirements and tests. With TPT Requirements example, can be imported from Telelogic DOORS, test cases are linked with the requirements and the data are synchronized with each other. Cover and Nachverfolgbarkeitsanalysen are possible. When importing changed requirements relevant test cases are marked and can be specifically adapted to new specifications.