7

Delphi2010プロジェクトのCIサーバーとしてHudsonを使用しています。XMLTestRunner.pasユニットは、DUnitテスト結果をxmlファイルに書き込みます。このファイルは、hudsonxUnitプラグインがテスト結果を報告するために使用します。xUnitプラグインは失敗を表示しますが、メッセージは表示しません。

Stacktrace

MESSAGE:

+++++++++++++++++++
STACK TRACE:

「テストツールの結果レポートの公開」のハドソンプロジェクト構成で、リストにdunitオプションがなく、xmlファイルがnunit形式に似ているため、テストツールとして「NUnit-バージョンN / A(デフォルト)」を選択します。

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>
<test-results total="123" notrun="0" date="20.12.2010" time="09:19:24">
<test-suite name="HelloWorldTestSuite" total="46" notrun="0">
<results>
<test-case name="TestCase.HelloWorldTest" execute="True" success="False" time="0,003" result="Failure">
<failure name="ETestFailure" location=""/>
<message>expected: &lt; hello world! &gt; but was: &lt; hallo welt &gt;</message>
</test-case>
...

ハドソン構成には「カスタムツール」オプションもあり、「カスタムスタイルシート」を指定する必要がありますが、そのようなスタイルシートの書き方がわかりません(ドキュメントはありますか?)。

ブーストテストを使用したC++プロジェクトでは、すべてのメッセージで障害が適切に報告されます。

4

2 に答える 2

4

失敗のXML構造は次のようになっている必要があるため、ハドソンで動作するようにXMLListenerを変更する必要がありました。

<testcase name="GetFreeDirNameTest" classname="Test.exe.MyFiles.TTests" result="failed" time="0.000">
  <failure message="Expected:
        &#34;-1&#34;
        But was:
        &#34;0&#34;" type="failed">GetFreeDirNameTest: Expected:
        &#34;-1&#34;
        But was:
        &#34;0&#34;
  </failure>
</testcase>
于 2011-04-15T12:49:49.430 に答える
3

DUnitからのNUnit互換出力にXMLTestRunnerを使用するのはどうですか?

于 2013-11-21T09:19:45.457 に答える