Cobertura de Código - Métodos e como funciona a cobertura de código?

Índice:

Anonim

O que é cobertura de código?

A cobertura do código é conhecida como a medida em que descrevemos o grau do código-fonte do programa que precisa ser testado. A cobertura do código, em resumo, é um tipo da técnica de teste da caixa branca, na qual localizamos as partes do programa que não foram executadas pelos casos de teste definidos. Eles também são incorporados na criação de poucos casos de teste, a fim de elevar a cobertura, bem como a determinação da medida bastante boa da cobertura do código. No entanto, em muitos casos, esse sistema coleta informações sobre o programa em execução. Além disso, a cobertura do código a incorpora, juntamente com as informações do código-fonte, para elaborar o relatório sobre a cobertura do código do conjunto de testes.

Como funciona a cobertura de código?

Na verdade, existem várias abordagens para a medição da cobertura do código. Se considerarmos de maneira ampla, existem três das abordagens a seguir:

  • Instrumentação do código fonte : a instrumentação do código fonte adicionará as instruções da instrumentação ao código fonte e, em seguida, compilará o código junto com a ferramenta de compilação normal, de modo a obter um conjunto instrumentado.
  • Instrumentação de código intermediário: Na instrumentação de código intermediário, os arquivos compilados são instrumentados através da adição dos bytecodes que são novos e, depois disso, a nova classe é gerada.
  • Coleta de informações em tempo de execução: Na coleta de informações em tempo de execução, reunimos as informações do ambiente em tempo de execução, pois o código é executado para determinar as informações de cobertura.

Como o código é executado sob o teste, o sistema de cobertura de código coletaria informações sobre quais instruções são executadas. Agora, essas informações seriam usadas como parte da base dos relatórios. Além disso, os métodos de cobertura de código diferem dependendo das várias formas das informações de cobertura que estão sendo coletadas. Existem vários métodos de cobertura de código se formos além dos métodos básicos de cobertura de declaração.

Métodos de cobertura de código

Existem muitos métodos de cobertura de código. Poucos deles estão listados abaixo:

  • Cobertura da condição
  • Cobertura FSM
  • Cobertura de Declaração
  • Cobertura de Decisão
  • Cobertura de Agências

1. Cobertura de Declaração

  • É a técnica de design de teste da caixa branca em que lidamos com a execução de todas as instruções executáveis ​​pelo menos uma vez que existe no código-fonte. A cobertura do código é necessária no cálculo, bem como na medição de muitas instruções que existem no código-fonte e nas que podem ser executadas, desde que os requisitos sejam fornecidos.
  • Esse método é necessário na derivação dos cenários, dependendo da estrutura do código que existe sob o teste.

2. Cobertura da Decisão

  • Esse método é útil no relatório de resultados verdadeiros ou falsos de todas as expressões que são booleanas. As expressões nesta cobertura geralmente se tornam complicadas. É por isso que é bastante difícil obter 100% de cobertura.
  • Essa é a razão pela qual existem vários métodos para relatar esse tipo de métrica. Esses métodos inteiros lidam basicamente com a cobertura das combinações mais significativas. A Cobertura de Decisão fornece grande sensibilidade para controlar o fluxo.

3. Cobertura de Agências

  • Quando falamos sobre esse tipo, queremos dizer que cada saída que vem do módulo de código é testada. Como exemplo, podemos considerar que, no caso de as saídas serem binárias, testaremos as saídas True e False.
  • A Cobertura de Filial nos ajuda a garantir que todas as filiais possíveis provenientes de cada uma das decisões sejam executadas no mínimo uma vez.
  • Através do método de cobertura da agência, podemos calcular a fração dos segmentos de código que são independentes. Além disso, esse método nos permite descobrir quais seções do código não possuem ramificações.

Existe a fórmula do cálculo da cobertura da agência:

Cobertura de Agências = Número de Agências Executadas / Nº Total de Agências Executadas

4. Cobertura da Condição

  • A cobertura de condição, também chamada de cobertura de expressão, nos diz como são avaliadas as variáveis ​​ou subexpressões existentes na instrução condicional.
  • Vamos considerar um exemplo em que uma expressão consiste nas operações booleanas como AND, OR ou XOR que consistem no número total de possibilidades.
  • Na verdade, esse método nos dá uma sensibilidade muito melhor para controlar o fluxo em comparação com a cobertura da decisão. Este método não nos garante a cobertura total da decisão.

Existe a fórmula do cálculo da cobertura da agência:

Cobertura da Condição = Número de Operandos Executados / Nº Total de Operandos Executados

5. Cobertura de máquinas de estado finito

  • Esse método é considerado como o tipo mais complexo de método de cobertura de código. A razão por trás disso é que esse método realmente funciona no comportamento do design.
  • Além disso, nesse método, descobrimos quantos dos estados específicos de horário são visitados e transitados. Além disso, esse método também verifica quantas das seqüências são consideradas na máquina de estados finitos.

Vantagens da cobertura de código

Algumas das vantagens são dadas abaixo:

  • É bastante útil na avaliação da medida quantitativa da cobertura do código
  • Também nos permite criar casos de teste extras, a fim de aumentar a cobertura
  • A cobertura do código também nos permite localizar as partes do programa que não são exercidas pelos casos de teste.

Desvantagens da cobertura de código

Algumas das desvantagens são apresentadas abaixo:

  • Sempre que um recurso específico não for bem implementado dentro do design, a cobertura do código ainda estaria relatando cobertura de 100%.
  • É impossível entender se você testar todos os valores possíveis do recurso através da cobertura do código
  • Também não diz quanto e quão bem cobrimos nossa lógica.

Conclusão

A cobertura do código é considerada a medida em que descrevemos o grau em que o código fonte de um programa foi testado. Também nos ajuda a calcular a eficiência da implementação do teste. Além disso, a cobertura de instruções significa executar todas as instruções executáveis ​​no mínimo uma vez.

Artigos recomendados

Este é um guia para cobertura de código. Aqui discutimos os métodos e como funciona a cobertura de código? juntamente com vantagens e desvantagens. Você também pode consultar os seguintes artigos para saber mais -

  1. Como a cobertura de teste facilita o trabalho?
  2. Várias ferramentas de teste de GUI
  3. Tipos de teste de mutação
  4. O que é o CodeIgniter?
  5. Ferramentas de cobertura de código | As 6 principais ferramentas de cobertura de código
  6. O que é caso de teste? | Dicas e truques