当我使用-r junit
运行catch单元测试时,输出中省略了成功的测试用例。这导致我的Jenkins构建失败,因为JUnit插件期望JUnit XML中的测试用例标记。无论如何,如果成功运行,我的JUnit输出中是否会出现测试用例标记?
Catch Test
#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>
答案 0 :(得分:0)
尝试添加&#34; -s&#34;对于参数,它应该使捕获列表所有测试而不仅仅是失败的测试。尝试使用&#34; - ?&#34;运行可执行文件。其他选项。