47

「テストレポートは見つかりましたが、新しいものはありません。テストは実行されましたか?」というエラーが表示されます。ユニットテストの結果をメールで送信しようとしたとき。その理由は、テストジョブからアーティファクトをそれ自体にインポートし、テスト結果を電子メールで送信する専用のJenkinsジョブがあるためです。私がこれを行う理由は、Jenkinsが夜間にすべての開発者の電子メールを送信したくないためです:) Jenkins自体が遅延電子メール通知をサポートしていないため(悲しいことに)、電子メールの送信を「延期」しています。

ただし、「テスト結果を電子メールで送信する」ジョブが実行されるまでに、テストは数時間前に行われ、質問のタイトルで指定されているエラーが発生します。この問題を回避する方法について何かアイデアはありますか?

4

14 に答える 14

66

テスト レポートのタイムスタンプをビルド ステップ (「シェル スクリプトの実行」) として更新してみることができます。例えば

cd path/to/test/reports
touch *.xml
于 2013-02-05T08:20:05.253 に答える
9
mvn clean test 

ターミナルまたはジェンキンス経由。これにより、新しいテスト レポートが生成されます。

cd path/to/test/reports touch *.xmlと言う他の答えは私にとってはうまくいきませんでしたが、mvn clean test yes.

于 2016-03-14T20:51:17.440 に答える
8

最終更新日の更新は、gradle 自体で行うこともできます。

task jenkinsTest{
    inputs.files test.outputs.files
    doLast{
        def timestamp = System.currentTimeMillis()
        test.testResultsDir.eachFile { it.lastModified = timestamp }
    }
}

build.dependsOn(jenkinsTest)

ここで述べたように:http://www.practicalgradle.org/blog/2011/06/incremental-tests-with-jenkins/

于 2013-07-07T20:05:40.133 に答える