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 e ci

1,499 views

Published on

  • Be the first to comment

Bdd e ci

  1. 1. Ricardo Almeida BDD e CI
  2. 2. Extreme Programming
  3. 3. Comunicação Extreme Programming
  4. 4. Comunicação Feedback Extreme Programming
  5. 5. Comunicação Simplicidade Feedback Extreme Programming
  6. 6. Comunicação Respeito Simplicidade Feedback Extreme Programming
  7. 7. Comunicação Respeito Simplicidade Feedback Coragem Extreme Programming
  8. 8. Test Driven Development
  9. 9. Escreva um teste que falhe
  10. 10. Implemente o necessário para passar
  11. 11. Refatore: Eliminar duplicidade Melhorar o design
  12. 12. TDD - Test First
  13. 13. Pair Programming
  14. 14. Não é fácil começar!
  15. 15. Maior Produtividade com testes
  16. 16. Behaviour Driven Development
  17. 17. Comportamento do Software Behaviour Driven Development
  18. 18. Comportamento do Software Behaviour Driven Development User Stories
  19. 19. Comportamento do Software Ubiquitous Language Behaviour Driven Development User Stories
  20. 20. Comportamento do Software Ubiquitous Language Behaviour Driven Development Entendimento do DONE! User Stories
  21. 21. Comportamento do Software Ubiquitous Language Behaviour Driven Development Entendimento do Especificação DONE! User Stories
  22. 22. Comportamento do Software Business Value Ubiquitous Language Behaviour Driven Development Entendimento do Especificação DONE! User Stories
  23. 23. (XP) Acceptance Test Driven Development
  24. 24. (BDD) Acceptance Test Driven Planning
  25. 25. Funcionalidade: Pagar conta online Para reduzir meu tempo pagando contas Como um cliente do banco com conta ativa Desejo pagar minhas contas online Cenário: pagar uma conta Dado uma conta corrente com $50 E uma cobrança de Telefone no valor $37 Quando eu pago a conta de Telefone Então devo ter $13 de saldo E a conta de Telefone na lista de pagamentos recentes
  26. 26. Capybara http://github.com/jnicklas/capybara.git
  27. 27. Precisa testar JS?
  28. 28. Chega de Click. Automatize!
  29. 29. Blue Ridge JavaScript Testing Rails Plugin
  30. 30. Integração Contínua
  31. 31. Faz parte da cultura do time!
  32. 32. Alertas de fail
  33. 33. Alertas de fail
  34. 34. Alertas de fail
  35. 35. Alertas de fail CCMenu
  36. 36. Alertas de fail
  37. 37. Alertas de fail
  38. 38. Integração Contínua • Membros das equipes precisam integrar seus trabalhos frequentemente. • Cada integração é validada por builds automáticos. • É necessário uma máquina separada para esse fim.
  39. 39. Integração Contínua • A Suite de testes precisa ser rápida para se ter ter feedback
  40. 40. Automatização
  41. 41. Continuous Deployment
  42. 42. Fail Fast
  43. 43. Mas e na produção?
  44. 44. Mailinator-Spec • http://github.com/technicalpickles/ mailinator-spec
  45. 45. Cucumber Scout • http://github.com/jnewland/cucumber-scout/ Scenario: CPU usage is low When I get the metrics from the 'Server Overview' plugin on 'example.com' Then 'cpu_last_minute' should be less than 1
  46. 46. Cucumber-Newrelic Scenario: Average Response time Given that my application is being monitored by New Relic Then my application's 'response time' should be less than 500 milliseconds • http://github.com/jnewland/cucumber- newrelic
  47. 47. Cucumber-Nagios • http://github.com/auxesis/cucumber-nagios Scenario: test queue 2 Given I have a AMQP server on rabbit.github.com And I want to check on the fork queue Then it should have less than 400 messages Then it should have at least 5 consumers Then it should have less than 50 messages per consumer
  48. 48. Integração Distríbuída http://github.com/brynary/testjour
  49. 49. Signal
  50. 50. Signal http://github.com/dcrec1/signal.git
  51. 51. Inploy Receita: application = "signal" repository = 'git://github.com/dcrec1/signal.git' hosts = ['hooters', 'geni'] Comandos: inploy setup inploy http://github.com/dcrec1/inploy
  52. 52. Deploy One-Click
  53. 53. Testes Exploratórios
  54. 54. Obrigado! Perguntas? @almeidaricardo github.com/ricardoalmeida manifestonaweb.wordpress.com

×