Pepino - Cenários
Scenarioé uma das principais estruturas do Gherkin. Cada cenário começa com a palavra-chave “Cenário:” (ou localizado) e é seguido por um título de cenário opcional. Cada recurso pode ter um ou mais cenários e cada cenário consiste em uma ou mais etapas. Um exemplo muito simples de cenário pode ser -
Scenario - Verifique a funcionalidade de ajuda.
Um determinado usuário navega para o Facebook.
Quando o usuário clica em Ajuda, a página Ajuda é aberta.
Considere um caso em que precisamos executar um cenário de teste mais de uma vez. Suponha que precisemos ter certeza de que a funcionalidade de login está funcionando para todos os tipos de titulares de assinatura. Isso requer a execução do cenário de funcionalidade de login várias vezes. Copie e cole as mesmas etapas para apenas reexecutar o código, não parece uma boa ideia. Para isso, a Gherkin fornece mais uma estrutura, que é o esboço do cenário.
O esboço do cenário é semelhante à estrutura do cenário; a única diferença é o fornecimento de vários insumos. Como você pode ver no exemplo a seguir, o caso de teste permanece o mesmo e não pode ser repetido. Na parte inferior, fornecemos vários valores de entrada para as variáveis “Nome de usuário” e “Senha”. Durante a execução do teste real, o Cucumber substituirá a variável pelos valores de entrada fornecidos e executará o teste. Depois que a passagem 1 for executada, o teste será executado novamente para a segunda iteração com outro valor de entrada. Essas variáveis ou marcadores de posição podem ser representados com ”<>” enquanto são mencionados com declarações em pepinos.
Exemplo
Scenario Outline- Funcionalidade de login para um site de rede social. O usuário fornecido navega para o Facebook.
Quando o usuário faz o login usando o nome de usuário como "<username>" e a senha como "<senha>", o login deve ser bem-sucedido.
| username | password |
| user1 | password1 |
| user2 | password2 |
Existem algumas dicas e truques para definir de forma inteligente os cenários do Cucumber.
Cada etapa deve ser claramente definida, para não criar confusão para o leitor.
Não repita o cenário de teste, se necessário, use o esboço do cenário para implementar a repetição.
Desenvolva uma etapa de teste de forma que possa ser usada em vários cenários e contornos de cenários.
Tanto quanto possível, mantenha cada etapa completamente independente. Por exemplo: “Dado que o usuário está logado”. Isso pode ser dividido em duas etapas
- Dado que o usuário insere o nome do usuário.
- Clica no login.