1

失敗したテストを数えて、すべてのテストが完了したときに 1 回だけ失敗させたいと思います。これらのテストは Jenkins によって毎晩実行され、失敗やエラーが発生した場合は結果が報告されます。問題は、これにはtrueまたはfalseのfailurePropertyとerrorPropertyしかないため、カウントを開始することさえできないことですが、最初の失敗またはエラーのテストに到達すると、停止して失敗します。私はグーグルで良い解決策を見つけられませんでした.彼らは私にこれらのプロパティを勧めましたが、私が必要とすることをしません.

コードは次のとおりです。

        <junit printsummary="true" fork="yes" forkmode="once" 
showoutput="false" haltonfailure="no" maxmemory="1024m" 
errorProperty="test.failed" failureProperty="test.failed">
            <classpath refid="junit.classpath" />
            <batchtest fork="yes" todir="${junit.dir}/raw" >
                <formatter type="xml" />
                <fileset dir="${classes.dir}">
                    <include name="**/*Test.class" />
                    <exclude name="*ear*/**"/>
                    <exclude name="**/Base*.class" />
                    <exclude name="**/JNDI*.class" />
                </fileset>
            </batchtest>
        </junit>
    <fail message="At least one test failed or has errors, please check test results in Jenkins to see details!" if="test.failed" />

何か重要なことを見逃していますか?この場合、 haltonfailure ="no"パラメータが機能していないようです。

あなたが私を助けることができるなら、事前に感謝します!

4

3 に答える 3

1

また、実行とレポート生成の両方のためにjunitターゲットを構成する方法に関する別の同様の質問から、この回答を確認してください。レポートを生成したら、JUnit テスト レポート生成ポスト ビルド アクションを使用して構成します。

また、 printsummary="withOutAndErr" を使用して確認しましたか? これは私にとっては完全にうまくいきます。

于 2013-02-08T14:21:39.543 に答える
1

JUnit プロパティを false に設定haltonerrorhaltonfailureます。次に、さまざまなレポート ツールを使用して、生成されたレポートを解析します。レポートは XML 形式にすることができ、JUnitreportを使用してファイルを解析できます。私は、各ビルド、失敗した JUnit テストの数、およびあらゆる種類の優れたレポートを表示する Jenkins を好みます。他の人は、さまざまな XSLT プログラムを使用します (これが実際に JUnitreport です)。

注意: JUnitReport を使用する場合、Ant の lib ディレクトリにいくつかの追加の jar が必要になる場合があります。しばらく JUnitReport を使用していませんでしたが、Xalan が必要だったことを覚えていますが、これは Java に付属しているものです。

于 2013-02-08T14:12:23.310 に答える
1

ant を使用してレポートを生成する必要がありますjunitreport。これにより、ジェンキンスが適切にカウントして表示するxmlファイルが出力され、興味があれば進化グラフなども表示されます。

于 2013-02-08T14:05:32.367 に答える