

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á.

# teste-e2e
<a name="greengrass-development-kit-cli-test"></a>

Use o comando `test-e2e` na interface de linha de comando do kit de desenvolvimento do AWS IoT Greengrass (CLI do CLI) para inicializar, criar e executar módulos de teste de ponta a ponta no projeto do GDK.

**Topics**
+ [init](#greengrass-development-kit-cli-test-init)
+ [build](#greengrass-development-kit-cli-test-build)
+ [executar](#greengrass-development-kit-cli-test-run)

## init
<a name="greengrass-development-kit-cli-test-init"></a>

Inicialize um projeto existente da CLI do GDK com um módulo de teste que usa a Estrutura de testes do Greengrass (GTF).

Por padrão, a CLI do GDK recupera o modelo do módulo maven do [repositório de modelos de componentes do AWS IoT Greengrass no GitHub](https://github.com/aws-greengrass/aws-greengrass-component-templates). Esse módulo maven vem com uma dependência do arquivo JAR `aws-greengrass-testing-standalone`.

Esse comando cria um novo diretório chamado `gg-e2e-tests` dentro do projeto do GDK. Se o diretório do módulo de teste já existir e não estiver vazio, o comando será encerrado sem fazer nada. Essa pasta `gg-e2e-tests` contém o atributo Cucumber e as definições de etapas estruturadas em um projeto maven.

Por padrão, esse comando tentará usar a versão mais recente do GTF.

**Resumo**  

```
$ gdk test-e2e init
    [--gtf-version]
```

**Argumentos**  
+ `-ov`, `--gtf-version`: (opcional) a versão do GTF a ser usada com o módulo de teste de ponta a ponta no projeto do GDK. Esse valor deve ser uma das versões do GTF dos [lançamentos](https://github.com/aws-greengrass/aws-greengrass-testing/releases). Este argumento substitui `gtf_version` na configuração da CLI do GDK.

**Saída**  
O exemplo a seguir mostra a saída produzida quando você executa esse comando para inicializar o projeto do GDK com o módulo de teste.  

```
$ gdk test-e2e init
[2023-12-06 12:20:28] INFO - Using the GTF version provided in the GDK test config 1.2.0
[2023-12-06 12:20:28] INFO - Downloading the E2E testing template from GitHub into gg-e2e-tests directory...
```

## build
<a name="greengrass-development-kit-cli-test-build"></a>

**nota**  
Você deve criar o componente executando **gdk component build** antes de criar o módulo de teste de ponta a ponta.

Crie o módulo de testes completo. A CLI do GDK cria o módulo de teste usando o sistema de compilação que você especifica no [arquivo de configuração da CLI do GDK](gdk-cli-configuration-file.md), `gdk-config.json`, na propriedade `test-e2e`. Você deve executar esse comando na mesma pasta em que o arquivo `gdk-config.json` existe.

Por padrão, a CLI do GDK usa o sistema de compilação maven para criar o módulo de teste. O [Maven](https://maven.apache.org/) é necessário para executar o comando `gdk test-e2e build`.

Você deve criar o componente executando **gdk-component-build** antes de criar o módulo de teste, caso os arquivos de atributos de teste tiverem variáveis como `GDK_COMPONENT_NAME` e `GDK_COMPONENT_RECIPE_FILE` para interpolar.

Quando você executa esse comando, a CLI do GDK interpola todas as variáveis da configuração do projeto do GDK e cria o módulo `gg-e2e-tests` para gerar o arquivo JAR de teste final.

**Resumo**  

```
$ gdk test-e2e build
```

**Argumentos**  
Nenhum

**Saída**  
O exemplo a seguir mostra a saída produzida ao executar esse comando.  

```
$ gdk test-e2e build
[2023-07-20 15:36:48] INFO - Updating feature file: file:///path/to//HelloWorld/greengrass-build/gg-e2e-tests/src/main/resources/greengrass/features/component.feature
[2023-07-20 15:36:48] INFO - Creating the E2E testing recipe file:///path/to/HelloWorld/greengrass-build/recipes/e2e_test_recipe.yaml
[2023-07-20 15:36:48] INFO - Building the E2E testing module
[2023-07-20 15:36:48] INFO - Running the build command 'mvn package'
.........
```

## executar
<a name="greengrass-development-kit-cli-test-run"></a>

Execute o módulo de teste com as opções de teste no arquivo de configuração do GDK.

**nota**  
Você deve criar o módulo de teste executando **gdk test-e2e build** antes de executar os testes de ponta a ponta

**Resumo**  

```
$ gdk test-e2e run
    [--gtf-options]
```

**Argumentos**  
+ `-oo`, `--gtf-options`: (opcional) especifique uma lista de opções para executar os testes de ponta a ponta. O argumento deve ser uma string JSON válida ou um caminho de arquivo para um arquivo JSON contendo as opções do GTF. As opções fornecidas no arquivo de configuração são mescladas com as fornecidas nos argumentos do comando. Se uma opção estiver presente em ambos os lugares, a do argumento terá precedência sobre a do arquivo de configuração.

  Se a opção `tags` não for especificada nesse comando, o GDK usará `Sample` para tags. Se `ggc-archive` não for especificado, o GDK baixa a versão mais recente do arquivo do núcleo do Greengrass.

**Saída**  
O exemplo a seguir mostra a saída produzida ao executar esse comando.  

```
$ gdk test-e2e run
[2023-07-20 16:35:53] INFO - Downloading latest nucleus archive from url https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-latest.zip
[2023-07-20 16:35:57] INFO - Running test jar with command java -jar /path/to/greengrass-build/gg-e2e-tests/target/uat-features-1.0.0.jar —ggc-archive=/path/to/aws-greengrass-gdk-cli/HelloWorld/greengrass-build/greengrass-nucleus-latest.zip —tags=Sample

16:35:59.693 [] [] [] [INFO] com.aws.greengrass.testing.modules.GreengrassContextModule - Extracting /path/to/workplace/aws-greengrass-gdk-cli/HelloWorld/greengrass-build/greengrass-nucleus-latest.zip into /var/folders/7g/ltzcb_3s77nbtmkzfb6brwv40000gr/T/gg-testing-7718418114158172636/greengrass
16:36:00.534 [gtf-1.1.0-SNAPSHOT] [] [] [INFO] com.aws.greengrass.testing.features.LoggerSteps - GTF Version is gtf-1.1.0-SNAPSHOT
.......
```