Página 1 de 1

Como escrever casos de teste (test cases)?

EnviadoCOLON Qua Jan 24, 2018 4:16 pm
por ArthurBrandao
Procurando definir um padrão para a criação de test cases na empresa onde trabalho, me deparei com o artigo escrito pelo Vinicius Sabadoti, onde ele dá 8 dicas para uma escrita de Casos de Teste:

https://viniciussabadoti.wordpress.com/ ... de-testes/

"Para as execuções dos testes funcionais, é comum a Criação de um Caso de Teste para a execução de cada condição de teste identificada pela equipe.

Geralmente este documento inicia falando sobre o objetivo do teste, seguido por uma pré-condição, que lista todos os itens ou condições que devem estar disponíveis para realizar o teste.

Em seguida, descrevemos a pós-condição que possui uma breve descrição do que deverá acontecer no término do teste.

Finalmente, partimos para a descrição do passo-a-passo, onde para cada passo descrito deve conter um ponto de verificação citando o resultado do passo executado.

Descrevendo desta maneira, temos a impressão de que tudo parece ser muito simples e fácil, basta seguir os passos descritos e os testes poderá ser executado facilmente.

Muito bom se fosse verdade! Se o Caso de Testes não for bem escrito, poderemos correr o risco de perder uma execução do teste e recomeçar tudo novamente.

Abaixo, cito 8 itens que acho interessante ficar atento quando criamos um Caso de testes:
1. Defina bem a pré-condição do teste:

Na minha opinião, definir muito bem a pré-condição poderá garantir 50 % da execução dos testes. Quando ela é bem descrita não corremos o risco de perdermos o teste, pois é muito desconfortável deparar com um passo pedindo para executar uma ação no sistema que pode não estar preparada, pois não foi citada na pré-condição. (simples exemplo: pedir a exclusão de um usuário específico cadastrado, e na pré-condição não citar a criação de um usuário para excluir).

Escreva de forma clara a pré-condição, se necessário faça como se fosse um passo-a-passo mesmo. Cite em ordem de prioridade as ações que devem ser feitas, como deve ser criada a massa de dados para o testes e o que deve ser feito por primeiro, segundo, etc.

Deste maneira o testador não irá descobrir somente no momento da execução o que devia ter preparado antes de iniciar os testes.

2. Escreva os Casos de Testes conforme citado no Caso de Uso.

O Caso de Uso contém todas as informações necessárias de como o sistema deve funcionar. Portanto, desenvolvedores e testadores não precisam imaginar ou supor como deve funcionar o sistema (salve exceções, em que há necessidade de discustir algumas regras).

Crie os Casos de Testes baseado no Caso de uso, assim a chance do sucesso dos testes será grande.

Um bom ponto de atenção, é que devemos sempre estar atentos com as atualizações dos Casos de Uso, pois muitas vezes as regras são alteradas e consequentemente pode ser necessário atualizar os Casos de Testes.

Nem todo Caso de Uso pode ter sido escrito de forma clara e conter todas as informações necessárias, neste caso não tenha medo de procurar o Analista de Requisitos que escreveu o documento.

3. Defina um bom título para o Caso de Testes.

Sei que não é uma tarefa fácil escrever em poucas palavras um bom título para o caso de Testes. Se possível coloque no Caso de Testes se cenário a ser testado é uma condição positiva ou negativa e o que será feito.

Muitas vezes o sistema a ser testado possui uma grande quantidade de Caso de Testes criados, portanto definir um bom título poderá permitir um acesso fácil para eventuais consultas destes documentos.

4. Cuidado com o português (escrita).

Este é um ponto que não só devemos tomar cuidado com o português na escrita do Caso de Testes, e sim com o nosso dia-a-dia. Muitas vezes, os Casos de testes são revisados por um membro da equipe e chegando até ao cliente do sistema para revisão do mesmo.

5. Numerar os Passos.

Esta é uma boa forma de organizar melhor os passos, auxiliando durante a execução dos testes. A numeração nos passos permite o testador se organizar melhor com os passos e caso ocorra a necessidade de parar os testes por um minuto, ele saberá em qual passo voltar.

6. Escreva os passos na forma imperativa

Use as palavras na forma imperativa, como “Digite um nome no campo”, “Escolha uma opção”, etc. Utilizando estes termos passamos a mensagem de que realmente deve ser feita uma ação e organizamos melhor nossos casos de testes seguindo um padrão na escrita.

7. Seja claro com os pontos de verificação.

Nunca deixe dúvidas com os pontos que devem ser verificados. Troque frases como: “o sistema PODE exibir uma mensagem” por “o sistema DEVE exibir uma mensagem”. Desta maneira não deixamos dúvida do que pode acontecer ao executar aquele passo e se acontecer algo diferente do descrito, teremos um defeito.

8. Atenção ao colocar imagens e nome de Campos.

Se o Caso de Teste não possuir o objetivo de verificar a usabilidade e o layout do sistema, tome muito cuidado ao citar os nomes do campo.
Como já citado, os Casos de Uso podem sofrer por atualizações que são impactadas no sistema, fazendo com que seja necessário mudar algum layout do sistema ou campo fazendo com que fique diferente do citado no Caso de Testes.

Por mais que alguns pontos citados parecem ser óbvios, quem já passou pela execução e criação de Casos de Testes sabe que na realidade é diferente. Sempre busque melhorar os Casos de Testes, pois com certeza todos da equipe tem a ganhar.

Não tenha medo de escrever demais, ou deixar o Caso de Testes comprido, desde que haja a necessidade. É melhor as vezes pecar pelo excesso do que deixar faltando algo!"

Re: Como escrever casos de teste (test cases)?

EnviadoCOLON Qua Jan 24, 2018 4:19 pm
por ArthurBrandao
Em cima das dicas dele e de uma certa bagagem que trago, defini os seguintes pontos para criação de test cases:

Minimizar a escrita de itens simples, do tipo:
“Acessar menu Arquivo” → “Serem apresentados os submenus de Arquivo”
“No submenu, clicar em Configurações” → “Ser apresentada tela para edição/consulta das configurações do sistema”

Ao invés disso, simplificar o máximo possível, por exemplo:
“Acessar menu Arquivo/ Configurações”

Essa parte mais “mecânica” do teste pode ser deixada para ser analisada diretamente no código de teste automatizado relacionado ao test case.

Na escrita do test case, o ideal é focar na validação do resultado esperado (com base na regra de negócio)

Estrutura do Test Case

Título:
Claro e objetivo (título mais objetivo é melhor do que título curto)
Um bom título poderá permitir um fácil acesso para eventuais consultas destes documentos.

Pré-condições:
Quando se fizer necessário, descrever com clareza tudo que é necessário para a execução daquele test case (um registro criado, uma opção desabilitada ou algo do tipo). Focar em condições específicas ao test case e não coisas do tipo “Computador ligado” ou “Programa X aberto”.

Descrição do teste:
Passos na forma imperativa, por exemplo:
“Digite o nome”
“Escolha a opção”

Ser claro com os pontos de verificação (campo “Expected result” no Team Foundation Server - Utilizado na empresa)

Revisar o português após a escrita do código.

Pós-Condições:
Na última etapa do teste (se necessário, criar um step “Realizar validação”), descrever detalhadamente a saída esperada após a execução das etapas do test case.