5 dicas para que o BDD agregue mais para o seu time

Yago Marques
Bee Lab Academy
Published in
3 min readJul 4, 2018

Oi, como vão vocês? Resolvi escrever sobre BDD, são 5 dicas rápidas e importantes para que o BDD agregue mais ao time. Pretendo escrever mais sobre o assunto, espero que gostem desse primeiro post.

Inclua uma descrição para funcionalidades

É importante passar um contexto para quem está lendo, insira uma descrição resumida da funcionalidade antes da escrita dos cenários. Duas perguntas que eu me faço sempre ao escrever um BDD:

Se fosse a primeira vez que eu estou lendo a funcionalidade conseguiria entender o principal propósito e os cenários sem precisar consultar outra documentação?

Daqui 6 meses quando for necessário ler o BDD novamente vou conseguir entender a funcionalidade e todos os cenários descritos?

Use os termos do negócio

Escreva o BDD na linguagem usada pelo time no dia a dia, assim o entendimento será mais rápido para todas as partes. É importante que todos os membros entendam a importância de se utilizar os mesmos jargões durante o projeto, então crie um dicionário caso necessário.

Irei usar Star Wars como exemplo

Como não fazer:

Mesmo você conhecendo Star Wars talvez tenha demorado um pouco para entender o que está acontecendo nesse cenário, vamos melhorar um pouco esse cenário passando palavras que fazem sentido para o “negócio”.

Como fazer:

Com pequenas mudanças temos um cenário bem mais fácil de ser compreendido por todas as partes interessadas.

Envolva o time na criação do BDD

O QA geralmente é evangelizador do BDD mas em um cenário ideal não é o único que escreve, faça os membros da equipe praticarem a escrita e aos poucos passe a responsabilidade para outros membros, faça um code-review dos BDD’s apontando melhorias para a escrita. Só a prática leva a perfeição.

Converse com o time sobre em qual camada automatizar o cenário descrito no BDD

Automação não existe apenas nas camadas de UI e de Serviço, sempre tenha em mente a pirâmide de testes durante a automação dos cenários e seja crítico em relação onde o cenário criado deve ser automatizado. Converse com o seu time e verifique se faz sentido levar a automação para as camadas da base da pirâmide.

Figure: The Test Pyramid by Martin Fowler

Atualize o BDD quando necessário

Um ponto difícil e que requer disciplina é atualização do BDD conforme modificações na funcionalidade. A dica é ter todos os BDDs bem acessíveis para que o time possa encontrar e modificar os BDDs quando existir a necessidade. O BDD é como uma planta e requer cuidados, mas o QA não é único que pode mante-la bonita e saudável.

Perguntas

Quais outras dicas voltadas para mindset e processo que poderíamos listar?

Já conseguiu colocar em prática alguma dessas dicas? Se sim, como?

Referências

https://www.thoughtworks.com/pt/insights/blog/3-misconceptions-about-bdd

https://martinfowler.com/articles/practical-test-pyramid.html

Livro Specification by Example por Gojko Adzic (Autor)

No próximo post irei focar nas boas práticas da linguagem Gherkin.

Todo feedback é de extrema importância para mim. Até a próxima!

--

--