使用Jenkins xUnit插件显示QTestlib的结果

我正在尝试为我的Qt单元测试项目使用Jenkins xUnit插件,但是我无法使其工作…

这是我到目前为止所做的:

首先,我使用qmakebuilder插件构建我的单元测试项目(向qmakebuilder插件提供.pro),然后添加Execute

Shell构建部分,首先rm -f在其中放置testResult

xml文件,然后运行测试带有-xunitxml标志的二进制文件,以使其为我生成xml文件,然后将xml文件命名为testResult.xml

rm -f /home/guest/QT/unitTest/testResult.xml

cd /home/guest/QT/unitTest

./tst_unittesttest -xunitxml > testResult.xml

最后,在Post Build Action中,选择Publish xUnit test result模式并将其指定为*.xml

但是,构建作业将失败,这是我使用Jenkins构建作业时获得的输出:

[xUnit] [INFO] - Starting to record.

[xUnit] [INFO] - Processing QTestlib-Version N/A

[xUnit] [INFO] - [QTestlib-Version N/A] - 1 test report file(s) were found with

the pattern '*.xml' relative to '/home/guest/QT/unitTest' for the testing framework

'QTestlib-Version N/A'.

[xUnit] [ERROR] - The converted file for the result file '/home/guest/QT/unitTest

/testResult.xml' (during conversion process for the metric 'QTestlib') is not

valid.

The report file has been skipped.

[xUnit] [ERROR] - The plugin hasn't been performed correctly: hudson.util.IOException2:

Failed to read /home/guest/QT/unitTest/generatedJUnitFiles/QTestlib/TEST--735044756.xml

Build step 'Publish xUnit test result report' changed build result to FAILURE

Build step 'Publish xUnit test result report' marked build as failure

Finished: FAILURE

如您所见,将我的测试结果xml文件转换为xUnit插件可以读取的问题。我的testResult.xml文件如下所示:

<?xml version="1.0" encoding="UTF-8" ?>

<testsuite errors="2" failures="0" tests="4" name="UnitTestTest">

<properties>

<property value="4.7.4" name="QTestVersion"/>

<property value="4.7.4" name="QtVersion"/>

</properties>

<testcase result="pass" name="initTestCase">

<!-- message="called before everything else" type="qdebug" -->

</testcase>

<testcase result="pass" name="myFirstTest"/>

<testcase result="pass" name="mySecondTest"/>

<testcase result="pass" name="cleanupTestCase">

<!-- message="called after myFirstTest and mySecondTest" type="qdebug" -->

</testcase>

<system-err>

<![CDATA[called before everything else]]>

<![CDATA[called after myFirstTest and mySecondTest]]>

</system-err>

</testsuite>

但是TEST--735044756.xml是一个单行的xml文件:<?xml version="1.0" encoding="UTF-8"?>

有人知道我在哪里做错了什么吗?生成输出xml文件应该有问题。

另一方面,我已经在系统日志Jenkins菜单中添加了“ thingi”日志,尽管这似乎并不是该问题的原因……至少是IMO

回答:

使用-xmlflag

执行测试二进制文件将正常工作。奇怪的是使用它-xunitxml创建了<testcase>没有time属性的损坏的xml文件。仅运行测试二进制文件会-xml成功构建作业。

以上是 使用Jenkins xUnit插件显示QTestlib的结果 的全部内容, 来源链接: utcz.com/qa/406456.html

回到顶部