A maintenance release is now available for all supported platforms.
Consider updating if you are using Version 7.0.5 or older.
New Features
-
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
-
Sample Projects for Reset / Address-Finding of Static SUT Variables:
- see:
rtt-create-project -u Static-Reset
Improvements
-
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
-
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
-
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
-
Templates:
- test-on-target:
rtt_received_send_tgtstub() now allows buffers without use of malloc(): -DRTT_TGT_REC_SEND_BUFFER_AS_LOCALVAR
-
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
-
Libraries:
rttparamlib has now consistent prefix (rttparamlib)
- [family:
posix-std] build per default without -g flag (performance)
-
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
-
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.
-
RTT Libraries:
- do not use
isspace() that (repeatedly) may evaluate LOCALE
this fixes the dependency issue for 32bit Windows/Cygwin1 (#21485)
-
RTT Scripts:
rtt-html-doc: replace double-quotes and ampersands in brief
tag description by HTML " (fixes #21831)
rtt-msword-doc-testproject: set correct default values
for [COMPONENT_FILTER] + [TESTPROC_FILTER] (fixes #21492)