Please enable JavaScript.
Coggle requires JavaScript to display documents.
Gherking - Coggle Diagram
Gherking
Quais são as KeyWords intermediárias?
Feature/ Funcionalidade
Representa a funcionalidade pai que será testada. Logo, todos cenários abaixo, pertencem aquela funcionalidade.
Feature
: Login na Alura
Eu
como usuário da plataforma
Gostaria
de ter acesso a plataforma
Porque
assim consigo me qualificar
Scenario/ Cenário
O cenário vai agrupar a validação
Feature
: Login na Alura
=
=
=
Scenario
: Login com dados incorretos
Given
que sou aluno da Alura
When
adiciono os dados incorretos de acesso
Then
o login não e realizado na plataforma
Mas
uma msg de erro é exibida na tela
Contexto/ Backgraound
Todo bloco de código que é comum entre os cenários, é adicionado a ele. Logo, se inicia o teste pelo contexto e depois vai para o cenário de teste.
Caso de uso:
Em uma plataforma diferentes tipos de acesso como por exemplo: acesso de professor, estudante, administrador, suporte. Então podemos agrupar os cenários num mesmo contexto.
Feature
: Login na Alura
=
=
=
Backgraund
: Acesso a plataforma
Given
que sou aluno da plataforma Alura
When
adiciono meus dados de acesso
Scenario
: Login com dados incorretos
And
adiciono os dados incorretos para login
Then
o login não é realizdo na plataforma
but
uma mensagem de erro é exibida na tela
Scenario
: Login com dados corretos
And
adiciono os dados para login
Then
o login é relizado na plataforma
And
um toast de sucesso aparece na tela
Scenario Outline/ Esquema de Cenário
Usamos quando temos uma massa de teste, ou seja, muitas entradas de testes para serem executadas
Feature
: Login na Alura
Background
: Acessar a plataforma
Scenario
: Login com dados incorretos
Scenario outline
: Validar acesso com multiplos níveis
And utilizo dados de <
nível
>
Then
o login é realizado na plataforma
Exemplos:
|
nível
|
|admin|
|suporte|
|usuário|
Scenario outline volta em background até completar todos os exemplos
O que é?
É um padrão de escrita universal que pode ser usado dentro do BDD
Quais são as vantagens?
Documentação clara;
Documentação padronizada;
Reaproveitamento na automação;
Evitar documentações ambiguas;
Quais são as KeyWords básicas?
Dado;
Quando;
Então;
E;
Mas.
Dado
Local inicial da validação, através dele é indicado o contexto inicial do sistema
Dado que sou aluno da plataforma Alura
Dado que estou no curso de Gherking
Dado que moro na cidade x
Quando
Ação principal que será realizada no sistema, a partir dela será gerado um resultado
Quando adiciono meus dados de acesso
Quando eu finalizo as aulas do curso
Então
Descreve a validação a ser feita
Dado que sou aluno da Alura (Contexto)
Quando adiciono meus dados de acesso (Ação)
Então o login é realizado na plataforma (Resultado)
E
Informa mais um passo importante a ser feito, no entanto, uma boa prática é não ter muitos E, em um caso de teste.
Dado que sou aluno da Alura (Contexto)
Quando adiciono meus dados de acesso (Ação)
E adiciono os dados de acesso corretos (Massa de teste)
Então o login é realizado na plataforma (Resultado)
Mas
Exceção ou condição adicional ao comportamento esperado
Dado que sou aluno autenticado da plataforma Alura
Quando realizo logout
Então devo ser redirecionado para a página inicial da Alura
Mas se houver um erro, devo ver uma mensagem informando: "falha ao sair, tente novamente."
Quais são as keyWords avançadas?
String("")
Tabelas(| |)
Tags( @ )
Comentários (#)
Tags
Subdivididas em:
Prioridade, severidade e regressivo
Para que usar a tag regressivo?
Pois esses testes serão obrigatórios em qualquer processo de deploy, ou seja, sempre serão executados
Lembrete:
Ela deve ser colocada em cima de feature ou scenario. Logo, tudo que está abaixo será executado
Para que servem?
Cria filtros na execução dos testes, logo, ao rodar os testes que possuem apenas a
,
somente eles serão executados