私のJenkins piplelineで、デバッグとリリース構成の両方で単体テストを実行します。各テスト構成は、個別のJUnit XML結果ファイルを生成します。両方のテスト名:デバッグ構成とリリース構成は同じです。現在、テスト結果を表示するために次のjunit
コマンドを使用しています。
junit allowEmptyResults: true, healthScaleFactor: 0.0, keepLongStdio: true, testResults: 'Test-Dir/Artifacts/test_xml_reports_*/*.xml'
問題は、Jenkins UIの両方にあります。デバッグおよびリリーステストの結果が一緒に表示され、どのテスト(デバッグまたはリリース構成から)が失敗したかを知ることができません。デバッグとリリーステストの結果を別々に表示することはできますか?はいの場合、どうすればよいですか?
それは私の質問の解決策には見えません。回避策として、JUnit XMLレポート形式を変更し、ビルドバリアント名(デバッグ/リリース)をパッケージ名として含めました。
異なるDBタイプの2つの異なる構成に対して同じ統合テストを実行します。私たちはmavenとフェイルセーフプラグインを使用しているので、-Dsurefire.reportNameSuffix
2つの実行の違いを確認できます。
以下は、Jenkinsfileのブロックの例です。
stage('Integration test MySql') {
steps {
timeout(75) {
sh("mvn -e verify -DskipUnitTests=true -DtestConfigResource=conf/mysql-local.yaml " +
"-DintegrationForkCount=1 -DdbInitMode=migrations -Dmaven.test.failure.ignore=false " +
"-Dsurefire.reportNameSuffix=MYSQL)
}
}
post {
always {
junit '**/failsafe-reports/*MYSQL.xml'
}
}
}
レポートでは、mysqlに対して実行された統合テストが、名前にMYSQLが追加されて表示されます。