Report skipped tests in CTest output #243
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When adding a test using
ament_add_test
, theSKIP_TEST
argument results in the--skip-test
argument being passed to the test wrapper scriptrun_test.py
. The wrapper script then writes a JUnit output describing that the test was skipped, and returns 0.As far as CTest knows, the test succeeded and shows
Passed
on the console. However, since we know that the test will be skipped by the wrapper, and we expect the wrapper to return 0 after it writes the JUnit file, we can set a test property that will mark the test asSkipped
when the wrapper returns 0.This way, the JUnit output file is still written, but CTest displays the test as skipped as well.
The
SKIP_RETURN_CODE
test property is present in CMake 3.0.2, if not earlier.