Verified Home

Verified Systems International GmbH

Quality Assurance for Embedded Systems

RT-Tester 7.0.6 now available (maintenance)

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

New Features

  1. New Utility: rtt-prune-testproject (FR #21536):

    • can be used to reduce disc space usage for legacy projects
    • only surplus files will be removed (or compressed); it will still be possible to document tests or projects afterwards
  2. Sample Projects for Reset / Address-Finding of Static SUT Variables:

    • see: rtt-create-project -u Static-Reset

Improvements

  1. Requirement / Test case Tracing:

    • delayed file logging: when creating SUM.tags, try to replace generic LOG_<am>.tags references by AM log file name;
      this allows rtt-html-doc to trace to the “first fail”
    • rtt-get-tc-coverage: now option --json FILE (FR #21619) to create output in JSON format
      this is used for better tool qualification documentation
  2. Enum Parsing/Pre-preprocessing (rttprep_enum):

    • robustness: expect #-lines to have trailing backslash
    • support C++11 syntax: enum class Name { ... } (FR #20089)
    • RTT_ENUM_SANITY: use cleaned, reduced version of $(CFLAGS) for compiler check for sanity
      otherwise we cannot suppress unwanted messages that the user has identified as unimportant
  3. RT-Tester Scripts:

    • all python scripts: define RTTDIR in os.environment if not set or set to a non-matching value
    • rtt-clean-testproject: avoid accidental clean of non-test procedures by adding more safeguards: e.g., *.conf must be parse-able (#21530)
    • rtt-clean-test[project]: new options to preserve parts (--keep-srcparts, --keep-coverage)
    • rtt-html-doc improvements:
      • improved handling of rtt-run-test.log (to determine duration of test)
      • if a test procedure is currently running, issue a warning and do not process any dynamic information
      • remove uncompressed *.log [from COMPRESSED_LOGS.tgz] after processing
      • new option --write-file-schema: writes the JSON schema that is expected for option --from-file JSON
      • report todo-markers (in new @todo column and in additional generated info per test procedure)
    • rtt-get-verdict: (robustness) evaluate *.tags files, if present; If a test has been terminated by a signal, then this may advance the total verdict to TESTERROR this way
    • rtt-doc-test improvements:
      • optimization: avoid creating complete_execution_log.txt[.gz] again, if the existing file is already up to date
      • better handling of verbatim include (FR#21581); documented \def\rttSKIPLST<rts-file> configuration
      • write ./testdata/todo_markers_in_{log,rttdoc}.txt
    • rtt-handle-suite improvements:
      • sanitize test procedure names when adding to a suite
      • for --runmode-tms, also use rtt-tms-{compile,doc}-test (or rtt-tms-{compile,doc}-test-custom) if present;
        this allows for more testbed-specific operations, like coverage-by-run
  4. Templates:

    • test-on-target: rtt_received_send_tgtstub() now allows buffers without use of malloc(): -DRTT_TGT_REC_SEND_BUFFER_AS_LOCALVAR
  5. Preprocessing of RTTL:

    • Generated code (*.rts / *.stubs): avoid compile warnings (#20505)
    • Stub handling allows flexible arrays (compare #5896) that have one undefined dimension
    • @rttSelect[X[Silent]]: when we “just has reached the timeout after yield”, allow to check once more for messages
      (unless the last yield took more than RTT_CONFIG_RTTSELECT_MAX_TOLERANCE_MS, default: 1000)
      also, do not accept messages that were sent after the (nominal) timeout;
      this realizes the FR #8218
  6. Libraries:

    • rttparamlib has now consistent prefix (rttparamlib)
    • [family: posix-std] build per default without -g flag (performance)
  7. User Manual:

    • new section on string literals (like RTTDIR_STRING)
    • new section on project templates (rtt-create-project)
    • new paragraph explaining -DRTT_BLOCK_SIGABRT (#19418)
    • new subsection 12.7.3 on array parameters in stubs (#5896)
    • added caveat about @sigWaitForChg (see #20762)

Bugfixes

  1. Test Compilation:

    • In extended stub syntax, support unsigned char* parameters (fixes #21635)
    • rttprep_enum re-allocates memory when duplicating large enum types (fixes #21647)
    • in global stubsrc, do not delete already created enum_print_* files during rtt-gen-test phase (fixes #21700)
      Note: this allows massive parallel compile in newly checked-out projects.
  2. RTT Libraries:

    • do not use isspace() that (repeatedly) may evaluate LOCALE this fixes the dependency issue for 32bit Windows/Cygwin1 (#21485)
  3. RTT Scripts:

    • rtt-html-doc: replace double-quotes and ampersands in brief tag description by HTML &quot; (fixes #21831)
    • rtt-msword-doc-testproject: set correct default values for [COMPONENT_FILTER] + [TESTPROC_FILTER] (fixes #21492)