

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Usar o comando `codebuild-tests-run` da CLI
<a name="parallel-test-tests-run"></a>

AWS CodeBuild fornece uma CLI que tomará o comando de teste e a localização do arquivo de teste como entrada. A CLI com essas entradas divide os testes em número de fragmentos, conforme especificado no campo `parallelism`, com base nos nomes dos arquivos de teste. A atribuição dos arquivos de teste ao fragmento é decidida pela estratégia de fragmentação.

```
codebuild-tests-run \
    --files-search "codebuild-glob-search '**/__tests__/*.js'" \
    --test-command 'npx jest --runInBand --coverage' \
    --sharding-strategy 'equal-distribution'
```

A tabela a seguir descreve os campos para o comando `codebuild-tests-run` da CLI.


| Nome do campo | Tipo | Obrigatório ou opcional | Definição | 
| --- | --- | --- | --- | 
|  `test-command`  |  String  |  Obrigatório  |  Esse comando é usado para executar os testes.  | 
|  `files-search`  |  String  |  Obrigatório  |  Esse comando fornece uma lista de arquivos de teste. Você pode usar o comando [codebuild-glob-search](parallel-test-glob-search.md)CLI AWS CodeBuild fornecido ou qualquer outra ferramenta de pesquisa de arquivos de sua escolha.  Certifique-se de que o comando `files-search` produza os nomes dos arquivos, cada um separado por uma nova linha.   | 
|  `sharding-strategy`  |  Enum  |  Opcional  |  Valores válidos: `equal-distribution` (padrão), `stability` [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/codebuild/latest/userguide/parallel-test-tests-run.html) Para obter mais informações, consulte [Sobre a divisão de testes](parallel-test-splitting.md).  | 

A CLI `codebuild-tests-run` funciona primeiro para identificar a lista de arquivos de teste usando o comando fornecido no parâmetro `files-search`. Depois, ela determina um subconjunto de arquivos de teste designados para o fragmento (ambiente) atual usando a estratégia de fragmentação especificada. Por fim, esse subconjunto de arquivos de teste é formatado como uma lista separada por espaços e anexado ao final do comando fornecido no parâmetro `test-command` antes de ser executado.

Para frameworks de teste que não aceitam listas separadas por espaço, a CLI `codebuild-tests-run` fornece uma alternativa flexível por meio da variável de ambiente `CODEBUILD_CURRENT_SHARD_FILES`. Essa variável contém uma lista de caminhos de arquivos de teste, separados por quebras de linha, designados para o fragmento de compilação atual. Ao aproveitar essa variável de ambiente, você pode se adaptar facilmente a vários requisitos do framework de teste, acomodando aqueles que esperam formatos de entrada diferentes das listas separadas por espaço. Além disso, você também pode formatar os nomes dos arquivos de teste conforme a necessidade do framework de teste. Veja a seguir um exemplo do uso de `CODEBUILD_CURRENT_SHARD_FILES` no Linux com o framework do Django. Aqui, `CODEBUILD_CURRENT_SHARD_FILES` é usado para obter caminhos de arquivos em *notação com pontos* compatíveis com o Django:

```
codebuild-tests-run \
    —files-search "codebuild-glob-search '/tests/test_.py'" \
    —test-command 'python3 manage.py test $(echo "$CODEBUILD_CURRENT_SHARD_FILES" | sed -E "s/\//__/g; s/\.py$//; s/__/./g")' \
    —sharding-strategy 'equal-distribution'
```

**nota**  
Observe que a variável de ambiente `CODEBUILD_CURRENT_SHARD_FILES` só pode ser usada dentro do escopo da CLI `codebuild-tests-run`.  
Além disso, se você estiver usando `CODEBUILD_CURRENT_SHARD_FILES` dentro do comando de teste, coloque `CODEBUILD_CURRENT_SHARD_FILES` entre aspas duplas, conforme mostrado no exemplo acima.