O documento discute técnicas de desenvolvimento de software ágil como Extreme Programming (XP), Test Driven Development (TDD), Behaviour Driven Development (BDD) e integração contínua. Ele também discute ferramentas para automatizar testes e monitoramento de aplicações em produção.
27. 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
40. 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.
41. Integração
Contínua
• A Suite de testes precisa ser rápida para se
ter ter feedback
49. 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
50. 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