SlideShare une entreprise Scribd logo
1  sur  57
Ricardo Almeida




          BDD e CI
Extreme
Programming
Comunicação




      Extreme
    Programming
Comunicação

Feedback


      Extreme
    Programming
Comunicação
              Simplicidade
Feedback


      Extreme
    Programming
Comunicação                  Respeito
              Simplicidade
Feedback


      Extreme
    Programming
Comunicação                  Respeito
              Simplicidade
Feedback                     Coragem


      Extreme
    Programming
Test
Driven
Development
Escreva um teste
    que falhe
Implemente o
  necessário
 para passar
Refatore:
Eliminar duplicidade
 Melhorar o design
TDD - Test First
Pair Programming
Não é fácil
começar!
Maior Produtividade
    com testes
Behaviour
Driven
Development
Comportamento do
    Software



Behaviour
Driven
Development
Comportamento do
    Software



Behaviour
Driven
Development

      User Stories
Comportamento do
    Software
                Ubiquitous
                Language
Behaviour
Driven
Development

      User Stories
Comportamento do
           Software
                        Ubiquitous
                        Language
     Behaviour
     Driven
     Development
Entendimento do
     DONE!
              User Stories
Comportamento do
           Software
                        Ubiquitous
                        Language
     Behaviour
     Driven
     Development
Entendimento do       Especificação
     DONE!
              User Stories
Comportamento do
             Software
Business Value             Ubiquitous
                           Language
       Behaviour
       Driven
       Development
 Entendimento do         Especificação
      DONE!
                 User Stories
(XP)
Acceptance
Test
Driven
Development
(BDD)
Acceptance
Test
Driven
Planning
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
Capybara




http://github.com/jnicklas/capybara.git
Precisa testar
     JS?
Chega de
   Click.
Automatize!
Blue Ridge JavaScript Testing Rails Plugin
Integração
 Contínua
Faz parte da
cultura do time!
Alertas de fail
Alertas de fail
Alertas de fail
Alertas de fail

CCMenu
Alertas de fail
Alertas de fail
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.
Integração
        Contínua

• A Suite de testes precisa ser rápida para se
  ter ter feedback
Automatização
Continuous
Deployment
Fail Fast
Mas e na produção?
Mailinator-Spec


• http://github.com/technicalpickles/
  mailinator-spec
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
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
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
Integração Distríbuída




   http://github.com/brynary/testjour
Signal
Signal




http://github.com/dcrec1/signal.git
Inploy
Receita:

application = "signal"
repository = 'git://github.com/dcrec1/signal.git'
hosts = ['hooters', 'geni']

Comandos:

inploy setup
inploy
           http://github.com/dcrec1/inploy
Deploy One-Click
Testes Exploratórios
Obrigado!

      Perguntas?
       @almeidaricardo
 github.com/ricardoalmeida
manifestonaweb.wordpress.com

Contenu connexe

Tendances

Dev ops integração contínua com jenkins
Dev ops integração contínua com jenkinsDev ops integração contínua com jenkins
Dev ops integração contínua com jenkinsMichel Cordeiro
 
Developer Experience no Nubank
Developer Experience no NubankDeveloper Experience no Nubank
Developer Experience no NubankLetticia Nicoli
 
Do desenvolvimento à store com React Native e VSTS
Do desenvolvimento à store com React Native e VSTSDo desenvolvimento à store com React Native e VSTS
Do desenvolvimento à store com React Native e VSTSWennder Santos
 
Testing Mobile - Calabash
Testing Mobile  - CalabashTesting Mobile  - Calabash
Testing Mobile - CalabashJoyce Bastos
 

Tendances (6)

Dev ops integração contínua com jenkins
Dev ops integração contínua com jenkinsDev ops integração contínua com jenkins
Dev ops integração contínua com jenkins
 
Developer Experience no Nubank
Developer Experience no NubankDeveloper Experience no Nubank
Developer Experience no Nubank
 
Do desenvolvimento à store com React Native e VSTS
Do desenvolvimento à store com React Native e VSTSDo desenvolvimento à store com React Native e VSTS
Do desenvolvimento à store com React Native e VSTS
 
Tdd On Rails
Tdd On RailsTdd On Rails
Tdd On Rails
 
Jenkins
JenkinsJenkins
Jenkins
 
Testing Mobile - Calabash
Testing Mobile  - CalabashTesting Mobile  - Calabash
Testing Mobile - Calabash
 

En vedette

En vedette (8)

Excelencia puc
Excelencia pucExcelencia puc
Excelencia puc
 
Excelência - PUC
Excelência - PUCExcelência - PUC
Excelência - PUC
 
Pipeline - Continuous Delivery
Pipeline - Continuous DeliveryPipeline - Continuous Delivery
Pipeline - Continuous Delivery
 
Grape golilath
Grape golilathGrape golilath
Grape golilath
 
Event machine
Event machineEvent machine
Event machine
 
Event Machine
Event MachineEvent Machine
Event Machine
 
Canaries in the air #gurusorocaba
Canaries in the air #gurusorocabaCanaries in the air #gurusorocaba
Canaries in the air #gurusorocaba
 
How to Pitch Bullshit
How to Pitch BullshitHow to Pitch Bullshit
How to Pitch Bullshit
 

Similaire à Bdd e ci

Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsJosé Alexandre Macedo
 
Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Igor Abade
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme ProgrammingRodrigo Branas
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMAdriano Bertucci
 
Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003
Aplicando  eXtreming Programing  ao cenário do  Borland ALM - BorCon 2003Aplicando  eXtreming Programing  ao cenário do  Borland ALM - BorCon 2003
Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003Edgar Silva
 
Webinar: Introdução à Distribuição Contínua na AWS
Webinar: Introdução à Distribuição Contínua na AWSWebinar: Introdução à Distribuição Contínua na AWS
Webinar: Introdução à Distribuição Contínua na AWSAmazon Web Services LATAM
 
Apresentando Extreme Programming
Apresentando Extreme ProgrammingApresentando Extreme Programming
Apresentando Extreme ProgrammingMilfont Consulting
 
Revisitando as Práticas de Engenharia Ágil
Revisitando as Práticas de Engenharia ÁgilRevisitando as Práticas de Engenharia Ágil
Revisitando as Práticas de Engenharia ÁgilDanilo Sato
 
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes AutomatizadosScrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes AutomatizadosStefan Teixeira
 
Android DevConference - Develop on Android and find success on Google Play
Android DevConference - Develop on Android and find success on Google PlayAndroid DevConference - Develop on Android and find success on Google Play
Android DevConference - Develop on Android and find success on Google PlayiMasters
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração ContínuaScrumHalf Tool
 
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...Marcelo Marques Gonçalves
 
[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018Larissa Soares
 
DevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoftDevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoftIgor Abade
 
Eco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobileEco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobileMauro
 
pepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSSpepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSSRodrigo Urubatan
 

Similaire à Bdd e ci (20)

Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
 
Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
 
Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003
Aplicando  eXtreming Programing  ao cenário do  Borland ALM - BorCon 2003Aplicando  eXtreming Programing  ao cenário do  Borland ALM - BorCon 2003
Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003
 
E so mais um campinho na tela
E so mais um campinho na telaE so mais um campinho na tela
E so mais um campinho na tela
 
Webinar: Introdução à Distribuição Contínua na AWS
Webinar: Introdução à Distribuição Contínua na AWSWebinar: Introdução à Distribuição Contínua na AWS
Webinar: Introdução à Distribuição Contínua na AWS
 
Apresentando Extreme Programming
Apresentando Extreme ProgrammingApresentando Extreme Programming
Apresentando Extreme Programming
 
Revisitando as Práticas de Engenharia Ágil
Revisitando as Práticas de Engenharia ÁgilRevisitando as Práticas de Engenharia Ágil
Revisitando as Práticas de Engenharia Ágil
 
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes AutomatizadosScrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
 
Android DevConference - Develop on Android and find success on Google Play
Android DevConference - Develop on Android and find success on Google PlayAndroid DevConference - Develop on Android and find success on Google Play
Android DevConference - Develop on Android and find success on Google Play
 
SAPO Session: Continuous Integration
SAPO Session: Continuous IntegrationSAPO Session: Continuous Integration
SAPO Session: Continuous Integration
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Continuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na NuvemContinuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na Nuvem
 
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
 
[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
DevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoftDevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoft
 
Eco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobileEco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobile
 
pepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSSpepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSS
 

Bdd e ci

Notes de l'éditeur