当我使用 运行我的 catch 单元测试时-r junit
,输出中省略了成功的测试用例。这会导致我的 Jenkins 构建失败,因为 JUnit 插件需要 JUnit XML 中的测试用例标签。如果它们成功运行,是否有测试用例标签出现在我的 JUnit 输出中?
捕捉测试
#define CATCH_CONFIG_MAIN
#include "catch.hpp"
TEST_CASE("Pass")
{
SECTION( "Passing on purpose" ) {
REQUIRE(true);
}
}
TEST_CASE("Fail")
{
SECTION( "Failing on purpose" ) {
REQUIRE(false);
}
}
-r junit 的输出
<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
<testsuite name="WhispererEngineTests.exe" errors="0" failures="1" tests="2" hostname="tbd" time="0.154008" timestamp="2017-11-02T14:53:57Z">
<testcase classname="Fail" name="Failing on purpose" time="0.153527">
<failure message="false" type="REQUIRE"> at -user path- test_Card.cpp:20
</failure>
</testcase>
<system-out/>
<system-err/>
</testsuite>
</testsuites>