ou metodologia) • Toda prática precisa de disciplina • A prática te leva a excelência técnica e isso lhe torna mais ágil Benefícios • Documentação atualizada • Conhecimento compartilhado (propriedade coletiva) • Redução de desperdício / Software com menos bugs • Redução de custo • Mudanças seguras e fáceis • Lançamento de software mais rápido (a longo prazo) Definições e benefícios 5
manutenção BDD requer alto envolvimento e colaboração do time de negócios BDD só funciona com contexto ágil BDD não funciona quando existem silos Desvantagens 6
programação específicas e é principalmente uma abordagem conceitual; torná-lo uma prática puramente técnica ou que dependa de ferramentas específicas seria perder completamente o ponto” Agile Alliance 11
a (Como) ………… I want to (quero) ………… so that I can (para) ………… Scenario: Short title Given (dado) … When (quando) … Then (então) … Início/configuração/contexto Ação/gatilho Resultado/Reação 15
As a (Como) um correntista bancário I want to (quero) transferir dinheiro pelo app so that I can (para) evitar de ir a uma agência Scenario: …… Given (dado) When (quando) Then (então) 17
As a (Como) um correntista bancário I want to (quero) transferir dinheiro pelo app so that I can (para) evitar de ir a uma agência Scenario: Transferir dinheiro para uma conta poupança Given (dado) que eu tenho 1000,00 em minha conta corrente When (quando) transfiro 600,00 para minha conta poupança Then (então) ficarei com saldo de 400,00 19
orientado ao domínio, testa a parte técnica e não de negócio BDT - imperativo (descrevem como deveria ser o comportamento do cenário e não exatamente o que ele quer) BDD - declarativo BDT BDD 21