Verified Home

Verified Systems International GmbH

Quality Assurance for Embedded Systems

RT-Tester 7.1.1 now available (maintenance)

A maintenance release is now available for all supported platforms.
Consider updating if you are using Version 7.1.0 or older.

Attention: Windows Users with License Server

If you are using a (floating) license located on a local or remote license server, then you need to make sure to use an up-to-date vendor daemon verified[.exe] there. The new vendor daemon is provided in <RTTDIR>/share/rt-tester/RTT-LIC-SERVER.tgz. for details see <RTTDIR>/share/doc/packages/rt-tester/rt-tester-license-mgmt.pdf:
Appendix A.5 Checkout failed: Bad message command Contact license@verified.de in case of problems.

New Features

  1. rtt-handle-suite:

    • allow timeout to refer to a file (json or txt), see #22429
      and documented it (including --gen-timeout)
    • allow sorting according to file (json or txt), see #22430
      options --sorting, --unsorted configure this
    • include timeout/runtime information in --status (unless --skip-timeouts is used)
      this may evaluate the DEFAULT_TIMEOUT
    • add statistics lines at end (unless --omit-statistics is given)
    • new option --import <other-suite>
    • new option --no-color to override any project-wide color settings
  2. Script Operations:

    • rtt-run-test:
      • add option --delay-kill to allow additional seconds before using SIGKILL; if delayed file logging of large log files is configured, this allows for more time to write them to hard drive.
    • rtt-doc-test:
      • --sut-details FILENAME can be configured to display more details on the SUT used (FR #22599)
      • for @includeed files, use the version now stored in ./src/ (i.e., freeze the compile-time status)
    • rtt-get-verdict: unless --quiet is set, report a TESTERROR prominently to <stderr>

Improvements

  1. Cluster Operation:

    • add RTT_CONFIG_CLUSTER_COM_TIMEOUT_S which aborts a cluster test if the communication gets stuck (mitigation for locking situations described in #22334)
  2. Test Project Documentation:

    • rtt-html-doc:
      • add runtime of tests to Executed column, with digit-separators
      • new lists REQ_ID_UNTESTED_LIST, TP_ID_NONPASS_LIST (#22541 suggestion)
      • ensure that REQ_DETAILS[] and REQS[] are defined for all requirement ids
      • add option --ignore-tlas to have only one TLA with everything
      • add TPS[id].local_tc_res to store the local verdict of a test case (aka test case instance verdict); this might be different from global verdict
      • new option --only-componentnames (used by rtt-msword-doc-testproject by default)
      • revise .cverdict and .tdverdict fields such that avoid multi-class annotations (not supported by some older browsers)
      • add option --howto-customise (also to rtt-msword-doc-testproject)
      • add TPS[id].rttdoc_TCSET that allows to access local test case verdict manipulations / evaluations
      • add imp0rt macro for python module import (resolve #22753)
    • rtt-msword-doc-testproject (using rtt-html-doc):
      • new option --ignore-symlinks allows to not follow symlinks when searching for test procedures
      • new option --onlyfail-anonymous allows to include anonymous tags only if they are FAIL (or INCONC or TESTERROR); ignore PASS and NOT TESTED
      • new option --doc-template PATTERN to use alternative *.doc template
      • new options --ignore-componentnames, --req-dir (forwarded to rtt-html-doc)
      • allow to configure start of output as template (document_start_*.html) new option --dump-startdoc gives a suggestion on how this could look like
      • replace __test_result_color__ by TCS[tc].cverdict (colored)
      • new option --skip-import copies the *.dot/*.doc templates (#22541 item 08);
        new option --skip-doc prevents this
  3. Parsers:

    • RTS file parsing/lexing (rttprep_rts):
      • accept arbitrary ’ in expressions, so if the compiler support it ("-std=c++14"), then digit separators can be used everywhere in *.rts
      • the @tag macro now propagates #DEF# or #REF# to #TEST#
      • mark rtt_csv_array_named_alias as possibility unused and also mark amId as possibly unused (for @action)
    • Other parsers (stubs, cnl, rtp)
      • Support @format “0x%08PRIx32” (and related) also in all *.stubs and *.cnl files (FR#22505)
      • in *.rtp / *.conf, an EXECPREFIX may contain environment variables (#22627)
  4. Libraries:

    • rttstrlib:
      • added rttstr_copy_line_buffer()
      • improve hexdump functions such that they suppress duplicates lines (by default)
    • CSV library:
      • added API functions rtt_csv_row2string() and rtt_csv_write_row() to prepare FR#22527
      • refactored table line processing to handle arbitrary long lines
      • refactor CSV code generation (@csvVal) to work around Cadul issues (#22552); this also makes all allocated data static const (cleaner)
  5. Other Utilities::

    • (General) robustness when following symlinks (to find test procedures): catch access errors (with warning) and do not follow symlinks that point to a directory of depth < 3 (seen from file system root): this avoids following technical links that point to file system root or user home.
    • (robustness) rtt-reset-verdict: treat *.rttdoc files as binary files (not touching the encoding)
    • reclassify normalising RTTDIR warning to note
    • rtt-clean-testproject: per default, do NOT follow symlinks have option --follow-symlinks to enforce that
    • rtt-expand-sigdef.py: mark only operative for Python 2.6.6 or higher and at least output --help information
    • rtt-prune-testproject: per default, do follow symlinks have option --ignore-symlinks to change that
    • rtt_mco option --analysis mow recognises input file by MD5:<sum>
    • stubsrc Makefile templates: leave white spaces (and def/undef) as-is when creating CLEANED_CFLAGS for enum expansion (#22583)
    • Fuzzing support (#19308): improved @out pointer handling without @memout -> arraydim=[1]
  6. Cadul Compiler Support:

    • Include newer QoverX (v1.1.2.1)
    • added wrappers script rtt-wine (for 32/64 bit situations)
  7. Sample Projects:

    • new TMPL_HTML project contains rtt-msword-doc-testproject template suggestions (used by DEMO and DEMO_CADUL)
    • DEMO V-2.8 (type robustness)
    • DEMO_CADUL V-1.5 (robustness wrt. wine)
    • revised FMI-Demo project to make operative with python3
  8. User Manual:

    • add Caveat for @sigWaitForChg() and related: the reference result list(s) are not cleared
    • add Caveat on symbolic links (symlinks) in projects
    • explain new rtt-handle-suite capabilities on runtime diagnostic and on sorting
    • page break on tables tables now repeats the heading
    • add section on Project Documentation (rtt-html-doc)

Bugfixes

  1. Corrections in Scripts:

    • all scripts (robustness): avoid os.walk, unless symlinks are switched off this is to avoid live-locks and in particular fixes #22502
    • repaired re syntax to be compatible with more strict python (whitespace / non-whitespace match)
    • avoid separating results section in delayed file logging by using spare memory at termination (fixes #22371)
    • rtt-html-doc: correct fallback operation if a test procedures is found to be running (fixes #22494) (self-test now part of rt-tester-tq: --with-create)
    • rtt-msword-doc-testproject-legacy: updated according to #22541
    • store all @include files in ./src/ (fixes #22524)
  2. Corrections in Operations:

    • do not escape '%' when creating @tag macro (fixes #22513)
    • fix memory-leak in extended stub syntax value store initialization for @now counter resets (fixes #22503)
    • rtttaglib: fixed counting of line numbers (some newlines were counted twice, giving too high line numbers in warnings) affects utilities: rttrts2tags, rttrts2tab
    • rttstrlib: fixed processing/matching outside string literals (the recognition of escaped doublequotes was not reliable)