Pergunta

Eu ouvi recentemente de BDD e achei muito semelhante ao TDD.

Qual destes dois você usa (se houver)?

e quais são os prós e contras de cada um?

Foi útil?

Solução

Estou muito do BDD = TDD feito corretamente acampamento. Se você está fazendo TDD como originalmente descrito por Beck - e praticada por muitos -., Em seguida, não há essencialmente nenhuma diferença

O BDD traz para a mesa é algumas variantes interessantes sobre a linguagem usada para descrever o processo. Usando a terminologia alternativo nas descrições do processo e as ferramentas esperança popular BDD para incentivar melhores práticas - um objetivo louvável

.

Eu venho fazendo TDD por tanto tempo agora é difícil para mim julgar se isso realmente ajuda. Eu acho que (esperança :-) eu já aprendi muitas das lições que BDD ferramentas / idioma incentivar para que eles não parecem oferecer valor muito extra para mim. Claro YMMV - e eu não fiz um projeto inteiro "mundo real" usando ferramentas BDD -. Para que eu possa tomar minhas experiências pessoais e extrapolando muito longe

Eu tinha palpite que as ferramentas de BDD / idioma pode ser mais útil ao folk sendo introduzidas para esta forma de abordar o desenvolvimento - desde que evitar toda a confusão com "teste" a ser utilizado na mais tradicional sentido. Eu não fiz isso ainda -. E estaria interessado se popular aqui ter tido qualquer experiência

Outras dicas

BDD é semelhante ao TDD, mas com uma mentalidade diferente. Em BDD você está tentando criar especificações executáveis ??em vez de testes. Isto é principalmente realizado usando um vocabulário diferente, mas mecânica semelhante como TDD.

BDD parece ser uma reação a uma série de casos em que as pessoas alegavam estar fazendo TDD, mas estavam escrevendo testes de integração em vez de testes de unidade. BDD pessoas pensavam falando sobre testes era enganosa e assim por testes tornou-se especificações. Esta parece ser uma metafísica pouco, mas há algumas boas idéias por trás dele.

BDD é tudo sobre a execução de cenários. Semelhante ao TDD, vamos testar cada cenário como uma história.

A história vai ser explicada pelo cliente .. baseando-se na história dos cenários será escrito. Ferramentas como PEPINO tornou fácil cenários de gravação.

TDD e BDD são praticamente o mesmo. A diferença é a forma como explicá-lo, e, portanto, como as equipes bem sucedida acabar sendo em fazer o trabalho para eles.

BDD baseia TDD formalizando os bons hábitos dos melhores praticantes de TDD. TDD é uma ferramenta desenvolvedores ou guia para escrever um bom software e BDD é uma boa ferramenta para a ajuda externa no desenvolvimento, com mais envolvimento do bussiness como é desenvolvido utilizando uma linguagem ubíqua.

A minha experiência é que BDD ajuda na colaboração, eo uso de, especificações executáveis-negócios legível ajuda a construir uma linguagem comum quando todos na equipe está envolvida na documentação que descreve o que o sistema deve fazer a escrever. Isso ajuda a toda a equipe para aprender a língua do domínio juntos.

BDD é o que é preciso para fazer TDD sucesso.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top