Verified Systems International GmbH

Quality Assurance for Embedded Systems

RT-Tester 7.0.0 now available (refactored)

A new feature release is now available for all supported platforms.
Consider updating if you are using Version 6.0-6.6.3 or older.

New Features

  1. Refactored for RTT 7:
    • all core scripts to use python (2.6 or higher)
      this is much faster and more stable than bash
    • package version numbering is now 7.0.0
  2. Support Pure C++ Test Scripts:
    • Provided example project rtt-noat that implements a C++ wrapper layer
    • Explain in Manual (new chapter 19: Test Scripts without RTTL)
  3. Support Requirement Integration:
    • Requirement descriptions can now be part of test documentation
      or project documentation (rtt-html-doc)
    • New utility rtt-extract-req for processing text or CSV inputs (FR#19761)
    • project.rtp can specify location of valid requirement files with REQ_DIR
  4. RTTL Language:
    • New command @mark() to prominently mark events in test log (implements FR#11900)
    • @csvLoop can now be restricted to certain rows (implements FR#19633)
    • @include now always searches upward from lowest TP/specs/ (implements FR#19666)
  5. Improved CSV Support:
    • @csvPrint can specify columns by their name (implements FR#19759)
    • Inside @csvLoop { ... } the macro @csvIdx can be used to access
      the current loop index, i.e, the row (implements FR#19753)
    • revised use of CSV tables and improved documentation;
      parsing of *.csv now allows "" in non-quoted entries
      (fitting to RFC 4180)
    • @csvRead gives better error message, if file is not found
  6. Cluster support:
    • @rttAllWarnings / @rttAllFailures are now from all cluster nodes (FR#5379)
    • Cluster (Infiniband) now assumes a small transmission delay
      when adjusting rttGetTimeTickLocalMicroSec_offset


  1. Test Documentation (rtt-doc-test / rtt-html-doc):
    • the section PROBLEMREPORTS now can also include
      a summary line for every PR (implements FR#19644);
      entries in project.rtp:REQ_DIR are considered implicitly
    • rtt-doc-test now creates a section requirements.tex
      that references linked test cases and includes
      the description (if available via REQ_DIR setting)
      (implements FR#19761)
    • new optional user comments for TESTCASE VERDICTS per verdict
      which creates testdata/tc_verdicts.json (FR#19742)
    • rtt-html-doc generates status bar (percentage) and
      data that can be used with different rendering engines;
      new options (--no-latex2html, --no-jinja2, --valid-testcase, --ignored-testcases)
      allow tailoring of custom output
    • CSV file parsing now also creates testdata/csv_log.html
      which is included by rtt-html-doc (up to some configurable limit)
  2. Cadul Usability:
    • libraries now built with current cadul.430T
    • upgraded RunCadul.exe to version deployed with 430T (64bit) / 430R (32bit)
    • upgraded CORR_IO.CLL to version deployed with 430T
    • for linking, test for sub-directories lib/win32 and lib/stand386
      (use them only if they exist, otherwise assume lib/)
    • rtt-cadul-run-cov: initial support for QoverX (set RTT_QOVERX_DIR)
    • include workaround for inoperative tmpfile() function (rttstr_aux_tmpfile() allocates files in <TestProc>/src/ folder)
    • include round() and roundf() in libraries
  3. Scripts and Parsers:
    • rtt-run-test:
      • option --list-zeros to indicate, whether covered lines
        also had statements with zero coverage (FR#19691)
      • option --zip now creates archive after generating SUM.tags
    • rtt-doc-test can now be called without user name (analogous to rtt-crd-test)
    • rtt-clean-testproject may be called on empty projects without error
    • rttprep_enum now accepts C++ namespace without name (and issues a WARNING)
  4. Utilities:
    • rtt-handle-suite: allows to set a default test suite
      (option --set-default / --clear-default)
    • rtt_parse_csv: new option --unquoted (in connection with FR#19742)
    • coverage merge rtt_mco adds <A NAME /> anchors for missed lines
      (or in case of --diff: reached lines) so they appear in the outline (FR#19776)
    • rtt-live-sigplot: add implicit (0, 0.0) entries, if plotting of some values starts later
      this aligns the plot scaling, if separate subplots are defined
  5. Sample Projects:
    • DEMO V-2.0:
      • examples for new command @mark()
      • added @fuzzLoop Range example
      • use requirements, problem reports and testcase evaluation
    • FMI-Demo [V-1.3] with improved self-documentation
      the templates and scripts have been revised for this (#19799)
    • Fuzz-Demo [V-1.2] with improved self-documentation
    • Project Template “rtt-noat” [V-1.0] (see FR#19676)
  6. Documentation (User Manual):
    • added @csv related commands to EBNF grammar (appendix B)
    • added section on file encoding (14.7.1)
    • added chapter on test scripts without RTTL (rtt-noat)
      (and project configuration flag SUPPORT_NOAT)
    • revised appendix content for python scripts


  1. CADUL:
    • fixed blocking issue - skipping of process phase (#19599)
  2. Scripts and Executables:
    • corrected @csvFloat(<n>) fraction cutoff (fixes #19695)
    • rtt_mco now WARNs on missing END UNREACHABLE mark and treats
      the subsequent file as reachable (fixes #19794)
    • corrected rttrts2tab --json escaping (fixes #19853,19854)
    • rtt-doc-test / rtt-get-tc-coverage: create SUM.tags
      from *.log files, if it is missing (fixes #19533)
    • rtt_tgt_locatefun ignores quotes inside comments (fixes #19781)
  3. Libraries:
    • portability of MD4SUM computation established (fixes #19600)
    • for fuzzing, fixed array dim parameters (if no @memin/@memout is given) (#19308)
    • fixed memory leak in rttstr_free_line_buffer_t()
      (fist buffer did not get de-allocated)