É possível usar o console do CodeBuild, a AWS CLI ou um arquivo buildspec para criar um grupo de relatórios. Sua função do IAM deve ter as permissões necessárias para criar um grupo de relatórios. Para obter mais informações, consulte Permissões de relatório de teste.
Tópicos
Criar um grupo de relatórios (buildspec)
Um grupo de relatórios criado com o uso do buildspec não exporta arquivos de resultado de teste bruto. Você pode visualizar seu grupo de relatórios e especificar as configurações de exportação. Para obter mais informações, consulte Atualizar um grupo de relatórios.
Como criar um grupo de relatórios usando um arquivo buildspec
-
Escolha um nome de grupo de relatórios que não esteja associado a um grupo de relatórios na sua conta da AWS.
-
Configure a seção
reports
do arquivo buildspec com esse nome. Neste exemplo, o nome do grupo de relatórios énew-report-group
e os casos de teste de uso são criados com a estrutura JUnit:reports: new-report-group: #surefire junit reports files: - '**/*' base-directory: 'surefire/target/surefire-reports'
O nome do grupo de relatórios também pode ser especificado usando variáveis de ambiente no buildspec:
version: 0.2 env: variables: REPORT_GROUP_NAME: "new-report-group" phases: build: commands: - ... ... reports: $REPORT_GROUP_NAME: files: - '**/*' base-directory: 'surefire/target/surefire-reports'
Para obter mais informações, consulte Especificar arquivos de teste e Reports syntax in the buildspec file.
-
Na seção
commands
, especifique o comando para executar seus testes. Para obter mais informações, consulte Especificar comandos de teste . -
Execute o build. Quando a compilação estiver concluída, um grupo de relatórios será criado com um nome que usa o formato
project-name-report-group-name
. Para obter mais informações, consulte Nomenclatura do grupo de relatórios.
Criar um grupo de relatórios (console)
O procedimento a seguir cria um grupo de relatórios usando a AWS Management Console.
Para criar um grupo de relatórios
Abra o console do AWS CodeBuild em https://console.aws.amazon.com/codesuite/codebuild/home
. -
No painel de navegação, escolha Grupos de relatórios.
-
Escolha Criar grupo de relatórios.
-
Em Report name group (Nome do grupo de relatórios), insira um nome para o grupo de relatórios.
-
(Opcional) Em Tags, insira o nome e o valor das tags que os serviços da AWS com suporte deverão usar. Use Adicionar linha para adicionar uma tag. É possível adicionar até 50 tags.
-
Se você quiser fazer upload dos dados brutos dos resultados do relatório de teste para um bucket do Amazon S3:
-
Selecione Exportar para o Amazon S3.
-
Em Nome do bucket do S3, insira o nome do bucket do S3.
-
(Opcional) Para Proprietário do bucket do S3, insira o identificador da conta da AWS que tem o bucket do S3. Isso permite que os dados do relatório sejam exportados para um bucket do Amazon S3 que pertence a uma conta diferente da conta que está executando a compilação.
-
Em Prefixo do caminho, insira o caminho no bucket do S3 onde deseja fazer upload dos resultados do teste.
-
Selecione Compactar dados do resultado do teste em um arquivo zip para compactar os arquivos de dados do resultado de teste bruto.
-
Expanda Configuração adicional para exibir opções de criptografia. Escolha uma das seguintes opções:
-
Chave gerenciada da AWS padrão para usar a Chave gerenciada pela AWS para o Amazon S3. Para obter mais informações, consulte CMKs gerenciadas pelo cliente no Guia do usuário do AWS Key Management Service. Esta é a opção de criptografia padrão.
-
Escolher uma chave personalizada para usar uma chave gerenciada pelo cliente criada e configurada por você. Para Chave de criptografia do AWS KMS, insira o ARN da chave de criptografia. O formato é
arn:aws:kms:
. Para obter mais informações, consulte Criar chaves do KMS no Guia do usuário do AWS Key Management Service.<region-id>
:<aws-account-id>
:key/<key-id>
-
Desativar criptografia de artefatos para desabilitar a criptografia. Você pode escolher isso se quiser compartilhar seus resultados de teste ou publicá-los em um site estático. (Um site dinâmico pode executar códigos para descriptografar os resultados de teste.)
Para obter mais informações sobre criptografia de dados em repouso, consulte Criptografia de dados.
-
nota
O perfil de serviço do CodeBuild especificado no projeto é usado em permissões para upload no bucket do S3.
-
-
Escolha Criar grupo de relatórios.
Criar um grupo de relatórios (CLI)
O procedimento a seguir cria um grupo de relatórios usando a AWS CLI.
Para criar um grupo de relatórios
-
Crie um arquivo chamado
CreateReportGroup.json
. -
Dependendo de suas necessidades, copie um dos seguintes trechos de código JSON para
CreateReportGroup.json
:-
Use o seguinte JSON para especificar que o grupo de relatórios de teste exporta arquivos de resultado de teste bruto para um bucket do Amazon S3.
{ "name": "
<report-name>
", "type": "TEST", "exportConfig": { "exportConfigType": "S3", "s3Destination": { "bucket": "<bucket-name>
", "bucketOwner": "<bucket-owner>
", "path": "<path>
", "packaging": "NONE | ZIP", "encryptionDisabled": "false", "encryptionKey": "<your-key>
" }, "tags": [ { "key": "tag-key", "value": "tag-value" } ] } }-
Substitua
<bucket-name>
pelo nome do bucket do Amazon S3 e<path>
pelo caminho no bucket para onde deseja exportar os arquivos. -
Se desejar compactar os arquivos exportados, para
packaging
, especifiqueZIP
. Caso contrário, especifiqueNONE
. -
bucketOwner
é opcional e só será necessário se o bucket do Amazon S3 pertencer a uma conta diferente da conta que está executando a compilação. -
Use
encryptionDisabled
para especificar se deseja criptografar os arquivos exportados. Se você criptografar os arquivos exportados, insira a chave gerenciada pelo cliente. Para obter mais informações, consulte Atualizar um grupo de relatórios.
-
-
Use o seguinte JSON para especificar que seu relatório de teste não exporta arquivos de teste brutos:
{ "name": "
<report-name>
", "type": "TEST", "exportConfig": { "exportConfigType": "NO_EXPORT" } }
nota
O perfil de serviço do CodeBuild especificado no projeto é usado em permissões para upload no bucket do S3.
-
-
Execute o seguinte comando:
aws codebuild create-report-group --cli-input-json file://CreateReportGroupInput.json
Criar um grupo de relatórios (AWS CloudFormation)
Utilize as instruções a seguir para criar um grupo de relatórios utilizando o modelo do AWS CloudFormation
Para criar um grupo de relatórios usando o modelo do AWS CloudFormation
Você pode usar um arquivo de modelo do AWS CloudFormation para criar e provisionar um grupo de relatórios. Para obter mais informações, consulte o Guia do usuário do AWS CloudFormation.
O modelo YAML do AWS CloudFormation a seguir cria um grupo de relatórios que não exporta arquivos de resultado de teste bruto.
Resources:
CodeBuildReportGroup:
Type: AWS::CodeBuild::ReportGroup
Properties:
Name: my-report-group-name
Type: TEST
ExportConfig:
ExportConfigType: NO_EXPORT
O modelo YAML do AWS CloudFormation a seguir cria um grupo de relatórios que exporta arquivos de resultado de teste bruto para um bucket do Amazon S3.
Resources:
CodeBuildReportGroup:
Type: AWS::CodeBuild::ReportGroup
Properties:
Name: my-report-group-name
Type: TEST
ExportConfig:
ExportConfigType: S3
S3Destination:
Bucket: amzn-s3-demo-bucket
Path: path-to-folder-for-exported-files
Packaging: ZIP
EncryptionKey: my-KMS-encryption-key
EncryptionDisabled: false
nota
O perfil de serviço do CodeBuild especificado no projeto é usado em permissões para upload no bucket do S3.