écnicas de teste de software com exemplos de design de caso de teste

O que é técnica de teste de software?

As técnicas de teste de software ajudam a projetar casos de teste melhores. Uma vez que o teste exaustivo não é possível; As técnicas de teste manual ajudam a reduzir o número de casos de teste a serem executados, aumentando a cobertura do teste. Eles ajudam a identificar as condições de teste que, de outra forma, são difíceis de reconhecer.

Neste tutorial, você aprenderá 5 técnicas importantes de teste de software:

Análise de valor limite (BVA)

A análise de valor limite é baseada em testes nos limites entre as partições. Inclui limites máximos, mínimos, internos ou externos, valores típicos e valores de erro.

Geralmente, é visto que um grande número de erros ocorre nos limites dos valores de entrada definidos, e não no centro. Ele também é conhecido como BVA e fornece uma seleção de casos de teste que exercitam os valores de limite.

Esta técnica de teste de caixa preta complementa o particionamento de equivalência. Esta técnica de teste de software baseia-se no princípio de que, se um sistema funciona bem para esses valores particulares, ele funcionará perfeitamente bem para todos os valores que estão entre os dois valores de limite.

Diretrizes para análise de valor limite

  • Se uma condição de entrada é restrita entre os valores xey, então os casos de teste devem ser projetados com os valores xey, bem como valores que estão acima e abaixo de xe y.
  • Se uma condição de entrada for um grande número de valores, o caso de teste deve ser desenvolvido, o qual precisa exercitar os números mínimo e máximo. Aqui, os valores acima e abaixo dos valores mínimo e máximo também são testados.
  • Aplique as diretrizes 1 e 2 às condições de saída. Ele fornece uma saída que reflete os valores mínimo e máximo esperados. Ele também testa os valores abaixo ou acima.

Exemplo:

Input condition is valid between 1 to 10 Boundary values 0,1,2 and 9,10,11

Particionamento de classe de equivalência

O Particionamento de Classe Equivalente permite que você divida o conjunto de condições de teste em uma partição que deve ser considerada a mesma. Este método de teste de software divide o domínio de entrada de um programa em classes de dados a partir das quais os casos de teste devem ser projetados.

O conceito por trás dessa técnica é que o caso de teste de um valor representativo de cada classe é igual a um teste de qualquer outro valor da mesma classe. Ele permite que você identifique classes de equivalência válidas e inválidas.

Exemplo:

As condições de entrada são válidas entre

 1 to 10 and 20 to 30

Portanto, existem cinco classes de equivalência

 --- to 0 (invalid) 1 to 10 (valid) 11 to 19 (invalid) 20 to 30 (valid) 31 to --- (invalid) 

Você seleciona valores de cada classe, ou seja,

-2, 3, 15, 25, 45

Teste baseado em tabela de decisão.

Uma tabela de decisão também é conhecida como tabela de causa e efeito. Esta técnica de teste de software é usada para funções que respondem a uma combinação de entradas ou eventos. Por exemplo, um botão de envio deve ser habilitado se o usuário inseriu todos os campos obrigatórios.

A primeira tarefa é identificar as funcionalidades em que a saída depende de uma combinação de entradas. Se houver um grande conjunto de combinações de entrada, divida-o em subconjuntos menores que são úteis para gerenciar uma tabela de decisão.

Para cada função, você precisa criar uma tabela e listar todos os tipos de combinações de entradas e suas respectivas saídas. Isso ajuda a identificar uma condição que é ignorada pelo testador.

A seguir estão as etapas para criar uma tabela de decisão:

  • Recrute as entradas em linhas
  • Insira todas as regras na coluna
  • Preencha a tabela com as diferentes combinações de entradas
  • Na última linha, anote a saída em relação à combinação de entrada.

Exemplo : Um botão de envio em um formulário de contato é habilitado apenas quando todas as entradas são inseridas pelo usuário final.

Estado de transição

Na técnica de transição de estado, as alterações nas condições de entrada alteram o estado do aplicativo em teste (AUT). Essa técnica de teste permite que o testador teste o comportamento de um AUT. O testador pode realizar essa ação inserindo várias condições de entrada em uma sequência. Na técnica de transição de estado, a equipe de teste fornece valores de teste de entrada positivos e negativos para avaliar o comportamento do sistema.

Diretriz para Transição de Estado:

  • A transição de estado deve ser usada quando uma equipe de teste está testando o aplicativo para um conjunto limitado de valores de entrada.
  • A técnica deve ser usada quando a equipe de teste deseja testar a sequência de eventos que acontecem no aplicativo em teste.

Exemplo:

No exemplo a seguir, se o usuário inserir uma senha válida em qualquer uma das três primeiras tentativas, o usuário poderá efetuar login com êxito. Se o usuário inserir uma senha inválida na primeira ou na segunda tentativa, será solicitado que ele insira a senha novamente. Quando o usuário insere a senha incorretamente 3rdvez, a ação foi executada e a conta será bloqueada.

Diagrama de transição de estado

Neste diagrama, quando o usuário fornece o número PIN correto, ele passa para o estado Acesso concedido. A Tabela a seguir é criada com base no diagrama acima-

Tabela de Transição de Estado

PIN correto PIN incorreto
S1) Iniciar S5 S2
S2) 1sttentar S5 S3
S3) 2WLtentar S5 S4
S4) 3rdtentar S5 S6
S5) Acesso concedido - -
S6) Conta bloqueada - -

Na tabela fornecida acima, quando o usuário insere o PIN correto, o estado é transferido para Acesso concedido. E se o usuário inserir uma senha incorreta, ele ou ela será movido para o próximo estado. Se ele fizer o mesmo 3rdvez, ele alcançará o estado de conta bloqueada.

Adivinhação de erro

Adivinhação de erro é uma técnica de teste de software baseada na adivinhação do erro que pode prevalecer no código. A técnica é fortemente baseada na experiência em que os analistas de teste usam sua experiência para adivinhar a parte problemática do aplicativo de teste. Portanto, os analistas de teste devem ser qualificados e experientes para uma melhor adivinhação de erros.

A técnica conta uma lista de possíveis erros ou situações propensas a erros. Em seguida, o testador escreve um caso de teste para expor esses erros. Para projetar casos de teste com base nessa técnica de teste de software, o analista pode usar as experiências anteriores para identificar as condições.

Diretrizes para adivinhação de erros:

  • O teste deve usar a experiência anterior de teste de aplicativos semelhantes
  • Compreensão do sistema em teste
  • Conhecimento de erros de implementação típicos
  • Lembre-se de áreas anteriormente problemáticas
  • Avalie os dados históricos e os resultados do teste

Conclusão

  • As técnicas de teste de software permitem que você projete casos melhores. Existem cinco técnicas utilizadas principalmente.
  • A análise de valor limite está testando os limites entre as partições.
  • O Particionamento de Classe Equivalente permite que você divida o conjunto de condições de teste em uma partição que deve ser considerada a mesma.
  • A técnica de teste de software da Tabela de Decisão é usada para funções que respondem a uma combinação de entradas ou eventos.
  • Na técnica de transição de estado, as mudanças nas condições de entrada alteram o estado do aplicativo em teste (AUT)
  • A adivinhação de erros é uma técnica de teste de software que se baseia na adivinhação do erro que pode prevalecer no código.