SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Continuous Integration,
Automated Builds e Continuous Deployment,
desenvolvimento com qualidade
Locaweb, 19 de setembro de 2015
RobsonAgapitoCorrea
Robson Agapito
 Divulgador de Qualidade de Software
 Coordenador de Qualidade na Locaweb
 br.linkedin.com/in/robsonagapito
 www.testadores.com
 @robsonagapito
COMO ERA ANTES
API
API
API
API
API
SYSTEMS
SYSTEMSSYSTEMS
1
REPO
DEV
REPO
QA
REPO
PRODUÇÃO
BRICKLAYER
MANUAL?!?
Disponibilizado no Repo
pelo BRICKLAYER,
tudo bem... mas como era
instalado nas máquinas?
TUDO MANUAL!!!!
TUDO MANUAL ?!?!?
NÃOOOOO!!!!!
QUANDO MENOS SE
ESPERA...
3 QAs Júnior
1 QA Sênior
2 Especialistas
3 QAs Júnior
1 QA Sênior
1 Especialista
+1 Especialista
-1 Especialista
O QUE PENSAMOS PARA 2014
NA NA NI NA NÃO!
PRIMEIRO PASSO
Contratação de um QAOps
+ QUE
500
MÁQUINAS
VERSIONAMENTO
Semantic Version
2.0
1.2.34
major.minor.patch
JENKINS CENTRALIZADO
CONTINUOUS INTEGRATION
DEBIAN 6 - SQUEEZE
DEBIAN 8 - JESSIE
BUILDS
CI
DEBIAN 6 - SQUEEZE
DEBIAN 8 - JESSIE
PROMOÇÃO DE PACOTES
REPO
PROD
CI
DEV PRODUÇÃOQA
Package Installer
APOIO (CI) – GEMS/BIBLIOTECAS
SIMPLECOV BRAKEMAN
BUNDLER-AUDITING
CI
TESTES DE SISTEMAS - FUNCIONAIS
...
DEV QA
CI
NÓ 01 NÓ 02 NÓ N
OLHANDO NA PRÁTICA
PRINCIPAIS DIFICULDADES
• Pouco conhecimento técnico do ambiente
• Infraestrutura muito complexa
• Somente olhar para QAs funcionais
• Ambiente centralizado em uma pessoa apenas
• Pouca automação para manter ambiente de QA
• QA muito diferente de produção
• Alterações em produção diretamente não
sendo replicadas em QA
PRINCIPAIS GANHOS
• Mesmo pacote transitando entre os ambientes
• Versionamento oficial do pacote
• Grid para testes funcionais com Selenium Webdriver
• Jenkins centralizado
• Possibilidade de colocar pontos de verificação durante
o processo de desenvolvimento
• Maior proximidade de Devs / QAs / SysAdmin
• Maior agilidade em acertar o ambiente de QA
• Ter um ambiente de QA mais confiável
• Monitoração do ambiente de QA
• Conseguindo visualizar maior agilidade no processo de
desenvolvimento
LIÇÕES APRENDIDAS
• Utilize do conhecimento de todos na sua volta (Dev e
SysAdmin)
• QAs tem que estar no time do projeto e não em um
time separado
• Comunicação entre os QAs dos times de diferentes
projetos ajuda a melhorar o projeto como um todo
• A coisa somente funciona se todos estiverem todos
indo para o mesmo lado, então alinhamento é muito
importante
• Para arquiteturas complexas é necessário um
especialista da área
• Automação, automação e automação
PRÓXIMOS PASSOS
Utilização do Docker
PRÓXIMOS PASSOS
Utilização do Package Installer nos
projetos que são possíveis
PRÓXIMOS PASSOS
Testes Não Funcionais
(Foco em Performance)
PRÓXIMOS PASSOS
BDD
(Behavior Driven Development)
PRÓXIMOS PASSOS
Um QAOps por time
PRÓXIMOS PASSOS
Ambiente de QA
em High Availability (HA)
PRÓXIMOS PASSOS
Preparação de Continuous
Deployment em Produção
http://blog.crisp.se/2013/02/05/yassalsundman/continuous-delivery-vs-continuous-deployment
Dúvidas?
Robson Agapito Correa
robson.agapito@locaweb.com.br
robsonagapito@gmail.com
Muito Obrigado!
Estamos contratando!
Front End / Back End
Continuous Integration,
Automated Builds e Continuous Deployment,
desenvolvimento com qualidade
RubyConf, 19 de setembro de 2015
RobsonAgapitoCorrea

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de TestesTOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
 
Feedback mais rápido na sua build dividindo os testes funcionais
Feedback mais rápido na sua build dividindo os testes funcionaisFeedback mais rápido na sua build dividindo os testes funcionais
Feedback mais rápido na sua build dividindo os testes funcionais
 
ATC BSB - Agile Testing
ATC BSB - Agile Testing ATC BSB - Agile Testing
ATC BSB - Agile Testing
 
Coders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile TestingCoders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile Testing
 
Visual Regression Testing: mais um tipo de teste pra sua pipeline
Visual Regression Testing: mais um tipo de teste pra sua pipelineVisual Regression Testing: mais um tipo de teste pra sua pipeline
Visual Regression Testing: mais um tipo de teste pra sua pipeline
 
Migração SVN para GIT
Migração SVN para GITMigração SVN para GIT
Migração SVN para GIT
 
[Agile Brazil] Entrega Contínua na Infoglobo: gerando valor em 2 horas
[Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas[Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
[Agile Brazil] Entrega Contínua na Infoglobo: gerando valor em 2 horas
 
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu SoftwareDevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
 
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShellDilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
 
Apenas um script de teste para iOS e Android
Apenas um script de teste para iOS e AndroidApenas um script de teste para iOS e Android
Apenas um script de teste para iOS e Android
 
Automação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e Mobile
 
Estratégias para o uso de integração e entrega contínua com gocd
Estratégias para o uso de integração e entrega contínua com gocdEstratégias para o uso de integração e entrega contínua com gocd
Estratégias para o uso de integração e entrega contínua com gocd
 
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
 
A Importância do Teste Continuo
A Importância do Teste ContinuoA Importância do Teste Continuo
A Importância do Teste Continuo
 
Jenkins integrando e estendendo.
Jenkins integrando e estendendo.Jenkins integrando e estendendo.
Jenkins integrando e estendendo.
 
O Testador Técnico
O Testador TécnicoO Testador Técnico
O Testador Técnico
 
Do Gitlab ao deploy
Do Gitlab ao deployDo Gitlab ao deploy
Do Gitlab ao deploy
 
Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...
Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...
Boas práticas de desenvolvimento ágil com Continuous Integration + Delivery e...
 
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
 
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
 

Andere mochten auch

внеклассное мероприятие путешествие с инфознайкой
внеклассное мероприятие путешествие с инфознайкойвнеклассное мероприятие путешествие с инфознайкой
внеклассное мероприятие путешествие с инфознайкой
liza2209
 
Fellow of HEA Certificate
Fellow of HEA CertificateFellow of HEA Certificate
Fellow of HEA Certificate
Simon Dawson
 
OSHA Certificate for Rajesh Gomes
OSHA Certificate for Rajesh GomesOSHA Certificate for Rajesh Gomes
OSHA Certificate for Rajesh Gomes
Rajesh Gomes
 
Media Scanner for Resolution Services - Client
Media Scanner for Resolution Services - ClientMedia Scanner for Resolution Services - Client
Media Scanner for Resolution Services - Client
Kenan Marks
 
Looking for a radiant skin, look out for radiation
Looking for a radiant skin, look out for radiationLooking for a radiant skin, look out for radiation
Looking for a radiant skin, look out for radiation
François Christiaens
 
Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012
Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012
Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012
Gianfranco Tammaro
 
компьютерные презентации
компьютерные презентациикомпьютерные презентации
компьютерные презентации
liza2209
 
графические объекты
графические объектыграфические объекты
графические объекты
liza2209
 
данные и устройства для работы с ними
данные и устройства для работы с нимиданные и устройства для работы с ними
данные и устройства для работы с ними
liza2209
 
правила складання ребусів
правила складання ребусівправила складання ребусів
правила складання ребусів
liza2209
 
интересные факты о информатике
интересные факты о информатикеинтересные факты о информатике
интересные факты о информатике
liza2209
 

Andere mochten auch (20)

Scrum, Essência Humana e o Novo-Socialismo
Scrum, Essência Humana e o Novo-SocialismoScrum, Essência Humana e o Novo-Socialismo
Scrum, Essência Humana e o Novo-Socialismo
 
контрольная работа №4
контрольная работа №4контрольная работа №4
контрольная работа №4
 
внеклассное мероприятие путешествие с инфознайкой
внеклассное мероприятие путешествие с инфознайкойвнеклассное мероприятие путешествие с инфознайкой
внеклассное мероприятие путешествие с инфознайкой
 
Fellow of HEA Certificate
Fellow of HEA CertificateFellow of HEA Certificate
Fellow of HEA Certificate
 
1
11
1
 
OSHA Certificate for Rajesh Gomes
OSHA Certificate for Rajesh GomesOSHA Certificate for Rajesh Gomes
OSHA Certificate for Rajesh Gomes
 
Media Scanner for Resolution Services - Client
Media Scanner for Resolution Services - ClientMedia Scanner for Resolution Services - Client
Media Scanner for Resolution Services - Client
 
Installation & configuration of IBM Cloud Orchestrator v2.5
Installation & configuration of IBM Cloud Orchestrator v2.5Installation & configuration of IBM Cloud Orchestrator v2.5
Installation & configuration of IBM Cloud Orchestrator v2.5
 
Looking for a radiant skin, look out for radiation
Looking for a radiant skin, look out for radiationLooking for a radiant skin, look out for radiation
Looking for a radiant skin, look out for radiation
 
Data Structure (Tree Continued)
Data Structure (Tree Continued)Data Structure (Tree Continued)
Data Structure (Tree Continued)
 
Mutant Testing: um mundo para um X-Testing.
Mutant Testing: um mundo para um X-Testing.Mutant Testing: um mundo para um X-Testing.
Mutant Testing: um mundo para um X-Testing.
 
Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012
Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012
Guazzaroni M. Nuove Metodiche Radiologiche nelle Emergenze Stroke. ASMaD 2012
 
компьютерные презентации
компьютерные презентациикомпьютерные презентации
компьютерные презентации
 
графические объекты
графические объектыграфические объекты
графические объекты
 
данные и устройства для работы с ними
данные и устройства для работы с нимиданные и устройства для работы с ними
данные и устройства для работы с ними
 
правила складання ребусів
правила складання ребусівправила складання ребусів
правила складання ребусів
 
Verizon taking over yahoo
Verizon taking over yahooVerizon taking over yahoo
Verizon taking over yahoo
 
интересные факты о информатике
интересные факты о информатикеинтересные факты о информатике
интересные факты о информатике
 
Yahoo analysis-
Yahoo analysis-Yahoo analysis-
Yahoo analysis-
 
管理程式對AWS LAMBDA持續交付
管理程式對AWS LAMBDA持續交付管理程式對AWS LAMBDA持續交付
管理程式對AWS LAMBDA持續交付
 

Ähnlich wie Ruby Conf Brasil 2015

Ähnlich wie Ruby Conf Brasil 2015 (20)

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
 
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAcelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
 
TDC2018SP | Trilha Testes - Guia de sobrevivência do QA em DevOps
TDC2018SP | Trilha Testes - Guia de sobrevivência do QA em DevOpsTDC2018SP | Trilha Testes - Guia de sobrevivência do QA em DevOps
TDC2018SP | Trilha Testes - Guia de sobrevivência do QA em DevOps
 
São Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOpsSão Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOps
 
Sonarqube
SonarqubeSonarqube
Sonarqube
 
DevOps é SIM uma questão de QA
DevOps é SIM uma questão de QADevOps é SIM uma questão de QA
DevOps é SIM uma questão de QA
 
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOpsE se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
E se ao invés de Dev e Ops for DevOps? Uma introdução a cultura DevOps
 
Procura-se: DevOps #cpbr9
Procura-se: DevOps #cpbr9Procura-se: DevOps #cpbr9
Procura-se: DevOps #cpbr9
 
Maio 2016 - O QA em um Time Ágil
Maio 2016 - O QA em um Time Ágil Maio 2016 - O QA em um Time Ágil
Maio 2016 - O QA em um Time Ágil
 
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian FerrariDrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
 
ESX Tech Lives - DevOps
ESX Tech Lives - DevOpsESX Tech Lives - DevOps
ESX Tech Lives - DevOps
 
SonarQube
SonarQubeSonarQube
SonarQube
 
Continuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na NuvemContinuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na Nuvem
 
DevCommerce Conference 2016: SecDevOps – Testes contínuos de segurança em apl...
DevCommerce Conference 2016: SecDevOps – Testes contínuos de segurança em apl...DevCommerce Conference 2016: SecDevOps – Testes contínuos de segurança em apl...
DevCommerce Conference 2016: SecDevOps – Testes contínuos de segurança em apl...
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Workshop ietec Devops Testing
Workshop ietec Devops TestingWorkshop ietec Devops Testing
Workshop ietec Devops Testing
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
 
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
 
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / GoiâniaAzure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
 
QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019)
QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019)QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019)
QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019)
 

Mehr von Robson Agapito Correa

Palestra FIAP - 11/09/2014 - Testes de Software
Palestra FIAP - 11/09/2014 - Testes de SoftwarePalestra FIAP - 11/09/2014 - Testes de Software
Palestra FIAP - 11/09/2014 - Testes de Software
Robson Agapito Correa
 

Mehr von Robson Agapito Correa (16)

ChatGPT e Testes de Software
ChatGPT e Testes de SoftwareChatGPT e Testes de Software
ChatGPT e Testes de Software
 
Testes em uma arquitetura com messageria/streaming (Kafka)
Testes em uma arquitetura com messageria/streaming (Kafka)Testes em uma arquitetura com messageria/streaming (Kafka)
Testes em uma arquitetura com messageria/streaming (Kafka)
 
Unit Testing
Unit TestingUnit Testing
Unit Testing
 
A aventura de um Agile Tester em uma empresa Waterfall Portuguesa
A aventura de um Agile Tester em uma empresa Waterfall PortuguesaA aventura de um Agile Tester em uma empresa Waterfall Portuguesa
A aventura de um Agile Tester em uma empresa Waterfall Portuguesa
 
Python com qualidade - testes funcionais com Python e Selenium Webdriver
Python com qualidade - testes funcionais com Python e Selenium WebdriverPython com qualidade - testes funcionais com Python e Selenium Webdriver
Python com qualidade - testes funcionais com Python e Selenium Webdriver
 
Qual arquitetura de automação escolher: monolítica ou distribuída?
Qual arquitetura de automação escolher: monolítica ou distribuída?Qual arquitetura de automação escolher: monolítica ou distribuída?
Qual arquitetura de automação escolher: monolítica ou distribuída?
 
MindMaps ajudando planejar meus testes no mundo Agile
MindMaps ajudando planejar meus testes no mundo AgileMindMaps ajudando planejar meus testes no mundo Agile
MindMaps ajudando planejar meus testes no mundo Agile
 
Utilizando Cucumber para um Continuous Delivery
Utilizando Cucumber para um Continuous DeliveryUtilizando Cucumber para um Continuous Delivery
Utilizando Cucumber para um Continuous Delivery
 
Automação de testes funcionais com Python e Mechanize
Automação de testes funcionais com Python e MechanizeAutomação de testes funcionais com Python e Mechanize
Automação de testes funcionais com Python e Mechanize
 
Estou desempregado e agora? Como me recolocar como QA.
Estou desempregado e agora? Como me recolocar como QA.Estou desempregado e agora? Como me recolocar como QA.
Estou desempregado e agora? Como me recolocar como QA.
 
Mutant Testing: um mundo para um X-Tester participar.
Mutant Testing: um mundo para um X-Tester participar.Mutant Testing: um mundo para um X-Tester participar.
Mutant Testing: um mundo para um X-Tester participar.
 
QAs podem realizar testes de APIs? DEVEM!!!
QAs podem realizar testes de APIs? DEVEM!!!QAs podem realizar testes de APIs? DEVEM!!!
QAs podem realizar testes de APIs? DEVEM!!!
 
Palestra FIAP - 11/09/2014 - Testes de Software
Palestra FIAP - 11/09/2014 - Testes de SoftwarePalestra FIAP - 11/09/2014 - Testes de Software
Palestra FIAP - 11/09/2014 - Testes de Software
 
Palestra FIAP - 11/09/2014 - Testes de Software
Palestra FIAP - 11/09/2014 - Testes de SoftwarePalestra FIAP - 11/09/2014 - Testes de Software
Palestra FIAP - 11/09/2014 - Testes de Software
 
Evento Locaweb Curitiba - Utilizando Rspec com Selenium Webdriver para reali...
Evento Locaweb Curitiba - Utilizando Rspec com Selenium Webdriver  para reali...Evento Locaweb Curitiba - Utilizando Rspec com Selenium Webdriver  para reali...
Evento Locaweb Curitiba - Utilizando Rspec com Selenium Webdriver para reali...
 
TDC 2012 - Processo de Teste e Qualidade de Software
TDC 2012 - Processo de Teste e Qualidade de SoftwareTDC 2012 - Processo de Teste e Qualidade de Software
TDC 2012 - Processo de Teste e Qualidade de Software
 

Ruby Conf Brasil 2015