Configurar testes paralelos com Java (Maven) - AWS CodeBuild

Configurar testes paralelos com Java (Maven)

Veja a seguir uma amostra de um buildspec.yml que mostra a execução de testes em paralelo com o Java em uma plataforma Linux:

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"

No exemplo fornecido, a variável de ambiente CODEBUILD_CURRENT_SHARD_FILES contém arquivos de teste no fragmento atual, separados por quebras de linha. Esses arquivos são convertidos em uma lista separada por vírgulas de nomes de classes no formato aceito pelo parâmetro -Dtest do Maven.