Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

BDD JBehave

4,235 views

Published on

Conheça a framework de BDD mais utilizado pela comunidade Java.

Published in: Technology
  • Be the first to comment

BDD JBehave

  1. 1. BDD com JBehave Por Ismael Soares
  2. 2. Relembrando...
  3. 3. Dificuldades ao iniciar com TDD... Por onde começar? O que testar? O teste tem que começar falhando?
  4. 4. Cansado de ver problemas como estes, Dan North... Idealiza BDD
  5. 5. O que é BDD?
  6. 6. BDD (Desenvolvimento Orientado por Comportamento) Uma técnica de desenvolvimento ágil que visa integrar regras de negócios com linguagem de programação.
  7. 7. Existem muitas ferramentas Para fazer o trabalho duro... JBehave
  8. 8. JBehave
  9. 9. Por que usar JBehave
  10. 10. Facilitar a comunicação entre todos os envolvidos
  11. 11. Verificar o comportamento através de integração contínua
  12. 12. Como JBehave funciona
  13. 13. Modelo do Arquivo Texto
  14. 14. Exemplo Estória do Usuário
  15. 15. No Arquivo Texto... Story: Cliente faz saque de dinheiro Como um cliente, eu gostaria de sacar dinheiro em caixa eletrônico, para que eu não tenha que esperar numa fila de banco Scenario : Cliente especial com saldo negativo Given um cliente especial com saldo atual de -200 reais When for solicitado um saque no valor de 100 reais Then deve efetuar o saque e atualizar o saldo da conta para -300 reais Scenario : Cliente comum com saldo negativo Given um cliente comum com saldo atual de -300 reais When solicitar um saque de 200 reais Then não deve efetuar o saque e deve retornar a mensagem Saldo Insuficiente Nome: caixa_eletronico_test (sem extensão e as palavras por “_”)
  16. 16. Esquema JBehave
  17. 17. Esquema JBehave
  18. 18. Maven < dependency > < groupId > org.jbehave </ groupId > < artifactId > jbehave-maven-plugin </ artifactId > < version > 2.3.1 </ version > </ dependency >
  19. 19. A Classe Principal
  20. 20. Steps
  21. 21. Steps
  22. 22. A Classe Principal
  23. 23. Resultado
  24. 24. Vantagens <ul><li>Totalmente desenvolvido em Java, o que facilita a integração com outros projetos da mesma plataforma; </li></ul><ul><li>Os usuários podem especificar e executar as Estórias de usuário baseadas em arquivo texto; </li></ul><ul><li>Anotações ( @annotations ) que conectam os textos da estória do usuário com os parâmetros dos métodos; </li></ul><ul><li>Além do console, os resultados dos testes podem ser vistos ainda nos formatos: HTML, TXT e XML. Mas isto requer uma configuração específica que pode ser encontrada na documentação do framework; </li></ul><ul><li>Controle de todas as etapas (métodos) dos cenários pendentes para que não fiquem sem ser implementadas; </li></ul><ul><li>Localização das Estórias através de palavras chaves, podendo assim, serem escritas em qualquer idioma (exceto Given, When e Then); </li></ul><ul><li>Integração com as principais IDEs, entre elas: Eclipse e NetBeans; </li></ul><ul><li>Execução com ANT e Maven. </li></ul>
  25. 25. Links e Referências http://jbehave.org/ Site oficial do framework JBehave. http://codificando.com/2009/04/jbehave-brasil-bdd-em-java-no-nosso-idioma/ Macedo, Emerson. Criando extensão do JBehave. Chelimsky,David, Aslak Hellesøy, Dave Astels, Zach Dennis, Bryan Helmkamp e Dan North. The RSpec Book : Behaviour Driven Development with RSpec, Cucumber, and Friends . Edited by Jacquelyn Carter. ISBN: 978.1.93435.637-1
  26. 26. Obrigado!

×