·
6 commits
to main
since this release
Changed
Skipped test counts
Skipped test counts are now reported via the skipped attribute rather than disabled. For <testsuite>, skipped matches the llg schema and the Jenkins junit-10 schema, as well as pytest and Maven Surefire.
- Each
<testsuite>now emitsskipped="N", and the root<testsuites>element now emits an aggregatedskipped="N"count. Previously the root didn't carry a skip count at all. - Root-level
skippedis a quick-junit extension. It follows the modern JUnit convention (as documented, for example, by testmoapp/junitxml) and is similar to quick-junit's existing extensions such asuuid. TestSuite'sdisabledfield has been renamed toskipped.Reportgains new publicskippedanddisabledfields, andReport::add_test_suitenow aggregates skip counts intoReport::skipped.
disabled is now modeled as a separate optional count on both Report and TestSuite, distinct from skipped. (disabled is intended to count tests that are disabled by design, such as googletest's DISABLED_-prefixed tests. Note, however, that quick-junit doesn't have a notion of disabled tests at the moment.)
Other changes
Reportis now#[non_exhaustive], consistent withTestSuiteandTestCase. Construct it viaReport::newand then assign fields, so that future field additions are non-breaking.- Childless
<testsuite>and<testcase>elements are now serialized as self-closing tags (for example,<testcase name="my-test"/>rather than<testcase name="my-test"></testcase>). The output is semantically identical XML, only more compact and idiomatic. The deserializer already accepted these self-closing forms, so serializing them means round-trip tests now cover those parse paths.