![Page 1: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/1.jpg)
Utilizando Cucumber para um ContinuousUtilizando Cucumber para um ContinuousDeliveryDelivery
Ro
bs
on
Ag
apit
o C
orr
ea18
de
Mar
ço d
e 20
17
![Page 2: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/2.jpg)
Robson AgapitoI love to work as QA
@robsonagapito
http://www.slideshare.net/robsonagapito/
https://br.linkedin.com/in/robsonagapito
![Page 3: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/3.jpg)
Continuous DeliveryContinuous Delivery
![Page 4: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/4.jpg)
Continuous IntegrationContinuous Integration
![Page 5: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/5.jpg)
Qual a diferença para Continuous Deployment?Qual a diferença para Continuous Deployment?
![Page 6: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/6.jpg)
Como era antes:Como era antes:
MonolitoPoucos Testes Unitários
Código complexo
Muitos testes funcionais intermitentes
Muitos testes manuais
Demora na Entrega
Muitas pessoas mexendo no mesmo ponto
Código com muitos donos
![Page 7: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/7.jpg)
Micro ServiçoMicro Serviço
![Page 8: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/8.jpg)
Nosso negócio:Nosso negócio:
MonolitoMonolito
Micro ServiçoMicro Serviço
![Page 9: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/9.jpg)
Vantagens:Vantagens:
Podemos relizar o delivery a qualquer momento
Bugs identificados mais rápidos
Bugs corrigidos mais rápidos
Alteração de regras de negócios podem ser realizadas com maior agilidade
Processo se tornou mais ágil
Planejamento semanal
Time se tornou DevOps
Mais testes unitários (possibilidade de realizar TDD)
Mais testes integrados e funcionais (possibilidade de realizar BDD)
Todos ficaram responsáveis pela qualidade
Time mais independente
Time ficou responsável/dono do código desenvolvido
Time entregando mais e com mais agilidade
Melhoria constante no Quadro de Kanban e nos Processos
![Page 10: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/10.jpg)
Importância dos Testes:Importância dos Testes:
CLONECLONE CLEANCLEAN BUILDBUILD
RELEASERELEASE APPROVALAPPROVAL DEPLOY PRODDEPLOY PROD
DOC ITILDOC ITIL
INTEGRATIONINTEGRATIONTESTINGTESTING DEPLOY QADEPLOY QA
UNITUNIT
TESTING
TESTING
SMOKE TEST PRODSMOKE TEST PROD
![Page 11: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/11.jpg)
INTEGRATION TESTINGINTEGRATION TESTING
![Page 12: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/12.jpg)
![Page 13: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/13.jpg)
Importância do Banco de Dados:Importância do Banco de Dados:
CLONECLONE CLEANCLEAN BUILDBUILD
RELEASERELEASE APPROVALAPPROVAL
DOC ITILDOC ITIL
DEPLOY QADEPLOY QA
SMOKE TEST PRODSMOKE TEST PROD
DELIVERY BANCOQA
DELIVERY BANCOPROD DEPLOY PRODDEPLOY PROD
UNITUNIT
TESTING
TESTING
INTEGRATIONINTEGRATIONTESTINGTESTING
![Page 14: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/14.jpg)
![Page 15: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/15.jpg)
Processo de Delivery:Processo de Delivery:
PULL REQUESTPULL REQUEST MERGEMERGE
![Page 16: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/16.jpg)
Cobertura de TestesCobertura de Testes
![Page 17: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/17.jpg)
Unit Testing => 25%Unit Testing => 25%
Integration Testing => ??%Integration Testing => ??%
![Page 18: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/18.jpg)
Testing TechniquesTesting Techniques
![Page 19: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/19.jpg)
Dificuldades:Dificuldades:
Falta da confiança da equipe de banco
Ambiente do Mesos era um pouco instável, por ser algo novo.
Não ter certeza da cobertura dos testes
Confiança inicial da área de negócios
Não ter um P.O. no início
Confiança da equipe de operações
Não tínhamos acesso a produção, mas somente a gente tinhaconhecimento para agir se necessário
Falta de Endomarketing do time
Sonar neste momento mais atrapalhou que ajudou
A configuração do Sonar estava com a criticidade equivocada,precisaria de um tempo enorme para configurar o mesmo.
![Page 20: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/20.jpg)
Tem que melhorar:Tem que melhorar:
Métricas sobre cobertura de Testes
Utilização de técnicas de testes pelo desenvolvimento para evitardesperdício de tempo
Testes após o deploy
Ambiente será cada vez mais crítico para suportar tantos deliveries
A independência as vezes faz o time olhar mais o seu lado e não para aempresa como um todo
Testes funcionais de UI no processo de delivery. (Happy Path)
Aprovação do Delivery após delivery de banco
Rollback Manual
![Page 21: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/21.jpg)
Exemplo PráticoExemplo Prático
![Page 22: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/22.jpg)
Dúvidas?
![Page 23: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/23.jpg)
Robson Agapito [email protected]
http://pt.slideshare.net/robsonagapitohttps://github.com/robsonagapito
Muito Obrigado!
![Page 24: Utilizando Cucumber para um Continuous Delivery](https://reader030.vdocuments.com.br/reader030/viewer/2022020213/58cfd5a91a28ab13238b4d83/html5/thumbnails/24.jpg)
Utilizando Cucumber para um ContinuousUtilizando Cucumber para um ContinuousDeliveryDelivery
Ro
bs
on
Ag
apit
o C
orr
ea18
de
Mar
ço d
e 20
17