Java (Maven) で並列テストを設定する - AWS CodeBuild

Java (Maven) で並列テストを設定する

以下は、Linux プラットフォームでの Java による並列テストの実行を示す buildspec.yml のサンプルです。

version: 0.2 batch: fast-fail: false build-fanout: parallelism: 5 ignore-failure: false phases: pre_build: commands: - echo 'prebuild' build: commands: - echo "Running mvn test" - | codebuild-tests-run \ --test-command 'mvn test -Dtest=$(echo "$CODEBUILD_CURRENT_SHARD_FILES" | sed "s|src/test/java/||g; s/\.java//g; s|/|.|g; s/ /,/g" | tr "\n" "," | sed "s/,$//")' \ --files-search "codebuild-glob-search '**/test/**/*.java'" post_build: commands: - echo "Running post-build steps..." - echo "Test execution completed"

示されている例では、環境変数 CODEBUILD_CURRENT_SHARD_FILES には現在のシャード内のテストファイルが含まれており、それぞれ改行で区切られています。これらのファイルは、Maven の -Dtest パラメータで受け入れられる形式のクラス名のカンマ区切りリストに変換されます。