Teste com fluxos de trabalho - Amazon CodeCatalyst

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 com fluxos de trabalho

Em CodeCatalyst, você pode executar testes como parte de diferentes ações do fluxo de trabalho, como criar e testar. Todas essas ações de fluxo de trabalho podem gerar relatórios de qualidade. Uma ação de teste é uma ação de fluxo de trabalho que produz relatórios de teste, cobertura de código, análise de composição de software e análise estática. Esses relatórios são exibidos no CodeCatalyst console.

Tipos de relatório de qualidade

A ação CodeCatalyst de teste da Amazon oferece suporte aos seguintes tipos de relatórios de qualidade. Para ver um exemplo de como formatar esses relatórios em seu YAML, consulte Exemplo de relatórios de qualidade YAML.

Relatórios de teste

Em CodeCatalyst, você pode configurar testes de unidade, testes de integração e testes de sistema que são executados durante as compilações. Em seguida, CodeCatalyst pode criar relatórios que contenham os resultados dos seus testes.

Você pode usar um relatório de teste para ajudar a solucionar problemas com seus testes. Se tiver muitos relatórios de teste de várias compilações, você poderá usar seus relatórios de teste para visualizar taxas de falha para ajudá-lo a otimizar suas compilações.

É possível usar os seguintes formatos de arquivo de relatório de testes:

  • Cucumber JSON (.json)

  • JUnit XML (.xml)

  • NUnit XML (.xml)

  • NUnit3 XML (.xml)

  • TestNG XML (.xml)

  • Visual Studio TRX (.trx, .xml)

Relatórios de cobertura de código

Em CodeCatalyst, você pode gerar relatórios de cobertura de código para seus testes. CodeCatalyst fornece as seguintes métricas de cobertura de código:

Cobertura de linha

Mede quantas declarações seus testes abrangem. Declaração é uma instrução única, que não inclui comentários.

line coverage = (total lines covered)/(total number of lines)

Cobertura de ramificações

Mede quantas ramificações seus testes cobrem de cada ramificação possível de uma estrutura de controle, como uma declaração if ou case.

branch coverage = (total branches covered)/(total number of branches)

Os seguintes formatos de arquivo de relatório de cobertura de código são compatíveis:

Relatórios de análise de composição de software

Em CodeCatalyst, você pode usar ferramentas de análise de composição de software (SCA) para analisar componentes do seu aplicativo e verificar se há vulnerabilidades de segurança conhecidas. Você pode descobrir e analisar relatórios do SARIF que detalham vulnerabilidades com severidades variadas e formas de corrigi-las. Os valores de gravidade válidos, do mais grave para o menos grave, são: CRITICAL, HIGH, MEDIUM, LOW e INFORMATIONAL.

Os seguintes formatos de arquivo de relatório SCA são compatíveis:

  • SARIF (.sarif, .json)

Relatórios de análise estática

Você pode usar relatórios de análise estática (SA) para identificar defeitos no código de origem. Em CodeCatalyst, você pode gerar relatórios de SA para ajudar a resolver problemas em seu código antes de implantá-lo. Esses problemas incluem bugs, vulnerabilidades de segurança, problemas de qualidade e outras vulnerabilidades. Os valores de gravidade válidos, do mais grave para o menos grave, são: CRITICAL, HIGH, MEDIUM, LOW e INFORMATIONAL.

CodeCatalyst fornece as seguintes métricas de SA:

Bugs

Identifica vários possíveis bugs encontrados em seu código de origem. Esses bugs podem incluir problemas relacionados à segurança da memória. Veja a seguir um exemplo de um bug.

// The while loop will inadvertently index into array x out-of-bounds int x[64]; while (int n = 0; n <= 64; n++) { x[n] = 0; }
Vulnerabilidades de segurança

Identifica várias vulnerabilidades de segurança possíveis encontradas em seu código de origem. Essas vulnerabilidades de segurança podem incluir problemas, como armazenar seus tokens secretos em texto simples.

Problemas de qualidade

Identifica vários possíveis problemas de qualidade encontrados em seu código de origem. Esses problemas de qualidade podem incluir problemas relacionados às convenções de estilo. Veja a seguir um exemplo de um problema de qualidade.

// The function name doesn't adhere to the style convention of camelCase int SUBTRACT(int x, int y) { return x-y }
Outras vulnerabilidades

Identifica várias outras vulnerabilidades possíveis encontradas em seu código de origem.

CodeCatalyst suporta os seguintes formatos de arquivo de relatório SA:

  • PyLint (.py)

  • ESLint (.js, .jsx, .ts, .tsx)

  • SARIF (.sarif, .json)