

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在批量构建中启用并行测试执行
<a name="parallel-test-enable"></a>

要并行运行测试，请更新批量构建 buildspec 文件，以包含构建扇出字段和要在 `parallelism` 字段中拆分测试套件的并行构建的数量，如下所示。`parallelism` 字段指定设置多少个独立的执行程序来执行测试套件。

要在多个并行执行环境中运行测试，请将 `parallelism` 字段设置为大于零的值。在下面的示例中，设置`parallelism`为 5，表示 CodeBuild 启动五个相同的构建，并行执行测试套件的一部分。

您可以使用 [codebuild-tests-run](parallel-test-tests-run.md)CLI 命令拆分并运行测试。测试文件将被拆分，并且将在每个构建中运行测试的一部分。这减少了运行完整测试套件所花的总时间。在以下示例中，测试将分成五个部分，并根据测试的名称计算拆分点。

```
version: 0.2

batch:
  fast-fail: false 
  build-fanout:
    parallelism: 5
    ignore-failure: false
    
phases:
  install:
    commands:
      - npm install jest-junit --save-dev
  pre_build:
    commands:
      - echo 'prebuild'
  build:
    commands:
      - |
        codebuild-tests-run \
         --test-command 'npx jest --runInBand --coverage' \
         --files-search "codebuild-glob-search '**/_tests_/**/*.test.js'" \
         --sharding-strategy 'equal-distribution'

  post_build:
    commands:
      - codebuild-glob-search '**/*.xml'  
      - echo "Running post-build steps..."
      - echo "Build completed on `date`"

reports:
  test-reports:
    files:
      - '**/junit.xml'               
    base-directory: .
    discard-paths: yes           
    file-format: JUNITXML
```

如果为 build-fanout 版本配置了报告，则会分别为每个版本生成测试报告，可以在控制台中相应版本的 “**报告**” 选项卡下查看这些报告。 AWS CodeBuild 

有关如何批量执行并行测试的更多信息，请参阅[各种测试框架的并行测试执行示例](sample-parallel-test.md)。