SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
QAOPS
O Q A C O M P É Z I N H O N O M U N D O D E VO P S
DEVOPS - CAMS
Ref.: https://www.telehouse.com/2016/03/devops-how-a-culture-of-empathy-creates-massive-productivity/e/
1. Mude o seu mindset e
foque nos princípios e
boas práticas DevOps!
2. Crie processos que
permita a você
automatizar tudo que é
possível automatizar!
3. Meça os resultados e
aproveite das métricas
para prover ações de
melhoria contínua!
4. Compartilhe todo
o aprendizado e
resultados!
CICLO DE VIDA DEVOPS
VAMOS FOCAR NO CICLO DEV
OS “CONTINUOUS”
v 1.1
Continuous Delivery
Continuous Integration
Continuous Deployment
Manual Deploy
Automatic Deploy
Source Control Build Staging Production
Commit Changes Run Build and
Unit Tests
Deploy toTest Environtment
Run Integration,Acceptance,
Load and othersTests
Deploy to Production
Environtment
VAMOS EXEMPLIFICAR...
Suponha que somos um time com DEV e QA e
desenvolvemos um sistema web com front-end e
back-end para geração de relatórios.
Esse sistema tem uma interface com vários campos
para o usuário preencher (front-end) e assim gerar
um relatório específico computado (back-end)
conforme as escolhas dele.
NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
- Versões do sistema compiladas pelo desenvolvedor, na máquina
dele e o QA precisa pedir para o DEV criar e liberar a versão
para ele.  As vezes ele esquece, ou manda versão errada,
ou demora pra liberar...
- Não há testes unitários e, se existe algum, não são executados.
- O QA tem um ambiente próprio na máquina dele.
- O QA executa os testes manualmente apenas pela interface do
sistema.
NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
- A cada liberação de versão ao
cliente, o QA precisa testar uma
suíte de 60 testes regressivos,
isso hoje, pois esse número só
vai aumentar!! Leva em torno de
2 dias, isso quando são
executados!
NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
- As vezes quando implanta a versão no cliente, ocorre
problemas por causa do ambiente dele!
“Na minha máquina funciona”... É, mas o cliente não
vai comprar a sua máquina!
NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
ESTÁGIO 01: VAMOS MELHORAR O BUILD
Submit
Code
Build
AGORA:
Versão correta automaticamente
disponível no repositório para
download
40 s
NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
- Versões do sistema compiladas pelo desenvolvedor, na máquina
dele e o QA precisa pedir para o DEV criar e liberar a versão
para ele.  As vezes ele esquece, ou manda versão errada,
ou demora pra liberar...
ESTÁGIO 02: UNIT TESTS
Submit
Code
Build Unit
Tests
AGORA:
TemosTestes Unitários!!
40 s 01 m
200 testes
ESTÁGIO 02: UNIT TESTS
Submit
Code
Build Unit
Tests
FEEDBACK:
E falhou!!! Em menos de 2 minutos
o desenvolvedor já fica sabendo
que há problemas e nem libera
para testes... E também já sabe
onde é o problema pontualmente!
40 s 01 m
200 testes
ESTÁGIO 02: UNIT TESTS
Submit
Code
Build Unit
Tests
FEEDBACK:
Problema resolvido rapidamente e
com custo baixo! Bugs em
produção evitados!
40 s 01 m
200 testes
NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
- Não há testes unitários e, se existe algum, não são executados.
- O QA tem um ambiente próprio na máquina dele.
- O QA executa os testes manualmente apenas pela interface do
sistema.
ESTÁGIO 03: DEPLOY STAGING
Submit
Code
Build Unit
Tests
AGORA:
Temos um ambiente com os requisitos
mínimos para rodar nossa aplicação.
Vamos executar nossos próximos
testes nele!
40 s
Staging
Environment
01 m
200 testes
1 m
ESTÁGIO 03: DEPLOY STAGING
Submit
Code
Build Unit
Tests
AGORA:
Para fazer o deploy nele, tivemos que criar
um script de instalação e configuração da
nossa aplicação!!! Ou seja, um passo
confiável para termos um futuro deploy
automatizado em produção!!!
40 s
Staging
Environment
01 m
200 testes
1 m
NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
- Não há testes unitários e, se existe algum, não são executados.
- O QA tem um ambiente próprio na máquina dele.
- O QA executa os testes manualmente apenas pela interface do
sistema.
- As vezes quando implanta a versão no cliente, ocorre
problemas por causa do ambiente dele!
“Na minha máquina funciona”... É, mas o cliente não
vai comprar a sua máquina!
NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
ESTÁGIO 04: API TESTS
Submit
Code
Build Unit
Tests
AGORA:
TemosTestes de API (ou integração, ou
serviços) !! Dos 60 que tínhamos, 40
eram possíveis de fazer via API.
40 s
API
Tests
01 m
200 testes
30 s
40 testes
Staging
Environment
1 m
ESTÁGIO 04: API TESTS
Submit
Code
Build Unit
Tests
40 s
API
Tests
01 m
200 testes
30 s
40 testes
Staging
Environment
1 m
FEEDBACK em menos de 04
minutos!
ESTÁGIO 04: API TESTS
Submit
Code
Build Unit
Tests
40 s
FEEDBACK:
Mais um problema resolvido
rapidamente e com custo baixo!
Mais bugs em produção evitados!
01 m
200 testes
API
Tests
30 s
40 testes
Staging
Environment
1 m
NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
- Não há testes unitários e, se existe algum, não são executados.
- O QA tem um ambiente próprio na máquina dele.
- O QA executa os testes manualmente apenas pela interface do
sistema.
ESTÁGIO 05: ACCEPTANCE TESTS
Submit
Code
Build Unit
Tests
AGORA:
TemosTestes de Aceitação (ou/e
end2end, ou/e funcionais) !! Dos 60 que
tínhamos, apenas 20 necessitam ser
testados via interface.
40 s
Acceptance
Tests
01 m
200 testes
10 m
20 testes
Staging
Environment
1 m
API
Tests
30 s
40 testes
ESTÁGIO 05: ACCEPTANCE TESTS
Submit
Code
Build Unit
Tests
AGORA:
Achamos melhor paralelizar esses
testes para ganhar alguns minutos!!
Reduzimos 6 minutos!!!
40 s
Acceptance
Tests
01 m
200 testes
3 m
20 testes
Staging
Environment
1 m
API
Tests
30 s
40 testes
ESTÁGIO 05: ACCEPTANCE TESTS
Submit
Code
Build Unit
Tests
40 s
Acceptance
Tests
01 m
200 testes
3 m
20 testes
Staging
Environment
1 m
API
Tests
30 s
40 testes
FEEDBACK em menos de 07
minutos!
ESTÁGIO 05: ACCEPTANCE TESTS
Submit
Code
Build Unit
Tests
40 s
Acceptance
Tests
01 m
200 testes
3 m
20 testes
Staging
Environment
1 m
API
Tests
30 s
40 testes
FEEDBACK:
Mais um problema resolvido rapidamente e
com custo baixo! Mais bugs em produção
evitados!
PIRÂMIDE DE TESTES
- A cada liberação de versão ao
cliente, o QA precisa testar uma
suíte de 60 testes regressivos,
isso hoje, pois esse número só
vai aumentar!! Leva em torno de
2 dias, isso quando são
executados!
NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
Redução de 02
dias para menos
de 07
minutos!!!!!!!!!!!!
- 02 dias para automatizar as novas funcionalidades;
- 02 dias para testes exploratórios, aumentando mais ainda a
cobertura;
- 02 dias para revisar a documentação;
- Tranquilidade sabendo que testei em um ambiente parecido
com o de produção;
- Ajuda dos desenvolvedores que agora têm feedback rápido dos
bugs encontrados no CI e eles mesmos se prontificam a
analisar e corrigir;
EU COMO QA GANHEI...
PRÓXIMOS ESTÁGIOS...
Merge Request
Build Unit
Tests
40 s
Acceptance
Tests
01 m
200 testes
3 m
20 testes
Staging
Environment
1 m
API
Tests
30 s
40 testes
OthersTests
Automatic
Deploy to
Production
Publish
Documentation
Code Review
PRIMEIROS PASSOS PARA O QA FAZER
DEVOPS
- Gostar do que faz;
- Dialogar com Business, Devs e Ops;
- Saber programar (sim, tire da cabeça a frase “não gosto de
programar”!);
- Entender "por debaixo dos panos" como funciona a aplicação
que você está testando;
- DRY: dont repeat yourself: tudo que você faz e é recorrente,
você deve automatizar;
- Entender como funciona o ambiente em que se encontra a
aplicação;
Ref.: http://www.keeptesting.com.br/2014/12/01/7-passos-para-se-tornar-um-devops/
OBRIGADA!
https://www.linkedin.com/in/mayfernandes/
https://github.com/mayribeirofernandes
https://gitlab.com/robot-framework-may-fernandes

Mais conteúdo relacionado

Mais procurados

Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test AutomationPekka Klärck
 
Usando containers com auto-escala de testes
Usando containers com auto-escala de testesUsando containers com auto-escala de testes
Usando containers com auto-escala de testesElias Nogueira
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredElias Nogueira
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8a34sharm
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)Wael Mansour
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with AgileKen McCorkell
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For AgileNaresh Jain
 
Testes de ponta a ponta
Testes de ponta a pontaTestes de ponta a ponta
Testes de ponta a pontaElias Nogueira
 
Developing a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps SuccessDeveloping a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps SuccessDevOps.com
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentationCarl Bruiners
 
Emerging QA COE Practice by Mukund Wangikar
Emerging QA COE Practice by Mukund WangikarEmerging QA COE Practice by Mukund Wangikar
Emerging QA COE Practice by Mukund WangikarAgile Testing Alliance
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation TestingArchana Krushnan
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de softwareRondinelli Mesquita
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comIdexcel Technologies
 
Automação de Testes com Robot Framework - GUTS-SC
Automação de Testes com Robot Framework - GUTS-SCAutomação de Testes com Robot Framework - GUTS-SC
Automação de Testes com Robot Framework - GUTS-SCMayara Fernandes
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Kaizenko
 

Mais procurados (20)

Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test Automation
 
Usando containers com auto-escala de testes
Usando containers com auto-escala de testesUsando containers com auto-escala de testes
Usando containers com auto-escala de testes
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For Agile
 
Testes de ponta a ponta
Testes de ponta a pontaTestes de ponta a ponta
Testes de ponta a ponta
 
Developing a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps SuccessDeveloping a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps Success
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
 
Emerging QA COE Practice by Mukund Wangikar
Emerging QA COE Practice by Mukund WangikarEmerging QA COE Practice by Mukund Wangikar
Emerging QA COE Practice by Mukund Wangikar
 
Introduction to Software Test Automation
Introduction to Software Test AutomationIntroduction to Software Test Automation
Introduction to Software Test Automation
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de software
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.com
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
O papel do qa (testador) em um time ágil
O papel do qa (testador) em um time ágilO papel do qa (testador) em um time ágil
O papel do qa (testador) em um time ágil
 
Automação de Testes com Robot Framework - GUTS-SC
Automação de Testes com Robot Framework - GUTS-SCAutomação de Testes com Robot Framework - GUTS-SC
Automação de Testes com Robot Framework - GUTS-SC
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1
 
Test Strategy
Test StrategyTest Strategy
Test Strategy
 

Semelhante a QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019)

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
 
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
 
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
 
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
 
Android Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na CloudAndroid Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na CloudiMasters
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...Amazon Web Services
 
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 AWSAmazon Web Services LATAM
 
SonarQube
SonarQubeSonarQube
SonarQubeCDS
 
Melhores práticas de CI/CD na construção de aplicações modernas
Melhores práticas de CI/CD na construção de aplicações modernasMelhores práticas de CI/CD na construção de aplicações modernas
Melhores práticas de CI/CD na construção de aplicações modernasAmazon Web Services LATAM
 
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
 
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...Stefan Teixeira
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Ramon Durães
 
Como aumentar a produtividade da sua equipe
Como aumentar a produtividade da sua equipeComo aumentar a produtividade da sua equipe
Como aumentar a produtividade da sua equipeWende Mendes
 
AWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
AWS Experience Fortaleza: Escalando sua aplicação Web com BeanstalkAWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
AWS Experience Fortaleza: Escalando sua aplicação Web com BeanstalkAmazon Web Services LATAM
 
O mínimo de Integração Contínua que todo projeto deveria ter
O mínimo de Integração Contínua que todo projeto deveria terO mínimo de Integração Contínua que todo projeto deveria ter
O mínimo de Integração Contínua que todo projeto deveria terÁtilla Silva Barros
 
Eco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobileEco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobileMauro
 
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ápidasAmazon Web Services LATAM
 

Semelhante a QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019) (20)

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
 
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
 
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
 
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
 
Cultura de testes em times mobile
Cultura de testes em times mobileCultura de testes em times mobile
Cultura de testes em times mobile
 
Android Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na CloudAndroid Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na Cloud
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
 
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
 
SonarQube
SonarQubeSonarQube
SonarQube
 
Melhores práticas de CI/CD na construção de aplicações modernas
Melhores práticas de CI/CD na construção de aplicações modernasMelhores práticas de CI/CD na construção de aplicações modernas
Melhores práticas de CI/CD na construção de aplicações modernas
 
Continuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na NuvemContinuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na Nuvem
 
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
 
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
 
Como aumentar a produtividade da sua equipe
Como aumentar a produtividade da sua equipeComo aumentar a produtividade da sua equipe
Como aumentar a produtividade da sua equipe
 
Escalando sua aplicação Web com Beanstalk
Escalando sua aplicação Web com BeanstalkEscalando sua aplicação Web com Beanstalk
Escalando sua aplicação Web com Beanstalk
 
AWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
AWS Experience Fortaleza: Escalando sua aplicação Web com BeanstalkAWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
AWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
 
O mínimo de Integração Contínua que todo projeto deveria ter
O mínimo de Integração Contínua que todo projeto deveria terO mínimo de Integração Contínua que todo projeto deveria ter
O mínimo de Integração Contínua que todo projeto deveria ter
 
Eco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobileEco-Sistema de desenvolvimento para mobile
Eco-Sistema de desenvolvimento para mobile
 
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
 

Mais de Mayara Fernandes

Robot Framework no DevTests #34
Robot Framework no DevTests #34Robot Framework no DevTests #34
Robot Framework no DevTests #34Mayara Fernandes
 
Qa ops mtc 2020 - mayara fernandes
Qa ops   mtc 2020 - mayara fernandesQa ops   mtc 2020 - mayara fernandes
Qa ops mtc 2020 - mayara fernandesMayara Fernandes
 
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?Mayara Fernandes
 
TDCPOA2018 - Trilha Python - Testes de Performance com Locust
TDCPOA2018 - Trilha Python - Testes de Performance com LocustTDCPOA2018 - Trilha Python - Testes de Performance com Locust
TDCPOA2018 - Trilha Python - Testes de Performance com LocustMayara Fernandes
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiMayara Fernandes
 
[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...
[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...
[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...Mayara Fernandes
 

Mais de Mayara Fernandes (6)

Robot Framework no DevTests #34
Robot Framework no DevTests #34Robot Framework no DevTests #34
Robot Framework no DevTests #34
 
Qa ops mtc 2020 - mayara fernandes
Qa ops   mtc 2020 - mayara fernandesQa ops   mtc 2020 - mayara fernandes
Qa ops mtc 2020 - mayara fernandes
 
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
#1 Robot Floripa - Robot Framework: O que é? Onde vive? Do que se alimenta?
 
TDCPOA2018 - Trilha Python - Testes de Performance com Locust
TDCPOA2018 - Trilha Python - Testes de Performance com LocustTDCPOA2018 - Trilha Python - Testes de Performance com Locust
TDCPOA2018 - Trilha Python - Testes de Performance com Locust
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
 
[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...
[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...
[PYTHONSUL2018] Apresentação do Tutorial - Automação de Testes com Robot Fram...
 

QAOps - O QA com pézinho em DevOps (Ministry of Testing Floripa 2019)

  • 1. QAOPS O Q A C O M P É Z I N H O N O M U N D O D E VO P S
  • 2. DEVOPS - CAMS Ref.: https://www.telehouse.com/2016/03/devops-how-a-culture-of-empathy-creates-massive-productivity/e/ 1. Mude o seu mindset e foque nos princípios e boas práticas DevOps! 2. Crie processos que permita a você automatizar tudo que é possível automatizar! 3. Meça os resultados e aproveite das métricas para prover ações de melhoria contínua! 4. Compartilhe todo o aprendizado e resultados!
  • 3. CICLO DE VIDA DEVOPS
  • 4. VAMOS FOCAR NO CICLO DEV
  • 5. OS “CONTINUOUS” v 1.1 Continuous Delivery Continuous Integration Continuous Deployment Manual Deploy Automatic Deploy Source Control Build Staging Production Commit Changes Run Build and Unit Tests Deploy toTest Environtment Run Integration,Acceptance, Load and othersTests Deploy to Production Environtment
  • 6. VAMOS EXEMPLIFICAR... Suponha que somos um time com DEV e QA e desenvolvemos um sistema web com front-end e back-end para geração de relatórios. Esse sistema tem uma interface com vários campos para o usuário preencher (front-end) e assim gerar um relatório específico computado (back-end) conforme as escolhas dele.
  • 7. NOSSO TIME ANTES (BASEADO EM FATOS REAIS)... - Versões do sistema compiladas pelo desenvolvedor, na máquina dele e o QA precisa pedir para o DEV criar e liberar a versão para ele.  As vezes ele esquece, ou manda versão errada, ou demora pra liberar...
  • 8. - Não há testes unitários e, se existe algum, não são executados. - O QA tem um ambiente próprio na máquina dele. - O QA executa os testes manualmente apenas pela interface do sistema. NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
  • 9. - A cada liberação de versão ao cliente, o QA precisa testar uma suíte de 60 testes regressivos, isso hoje, pois esse número só vai aumentar!! Leva em torno de 2 dias, isso quando são executados! NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
  • 10. - As vezes quando implanta a versão no cliente, ocorre problemas por causa do ambiente dele! “Na minha máquina funciona”... É, mas o cliente não vai comprar a sua máquina! NOSSO TIME ANTES (BASEADO EM FATOS REAIS)...
  • 11. ESTÁGIO 01: VAMOS MELHORAR O BUILD Submit Code Build AGORA: Versão correta automaticamente disponível no repositório para download 40 s
  • 12. NOSSO TIME HOJE (BASEADO EM FATOS REAIS)... - Versões do sistema compiladas pelo desenvolvedor, na máquina dele e o QA precisa pedir para o DEV criar e liberar a versão para ele.  As vezes ele esquece, ou manda versão errada, ou demora pra liberar...
  • 13. ESTÁGIO 02: UNIT TESTS Submit Code Build Unit Tests AGORA: TemosTestes Unitários!! 40 s 01 m 200 testes
  • 14. ESTÁGIO 02: UNIT TESTS Submit Code Build Unit Tests FEEDBACK: E falhou!!! Em menos de 2 minutos o desenvolvedor já fica sabendo que há problemas e nem libera para testes... E também já sabe onde é o problema pontualmente! 40 s 01 m 200 testes
  • 15. ESTÁGIO 02: UNIT TESTS Submit Code Build Unit Tests FEEDBACK: Problema resolvido rapidamente e com custo baixo! Bugs em produção evitados! 40 s 01 m 200 testes
  • 16. NOSSO TIME HOJE (BASEADO EM FATOS REAIS)... - Não há testes unitários e, se existe algum, não são executados. - O QA tem um ambiente próprio na máquina dele. - O QA executa os testes manualmente apenas pela interface do sistema.
  • 17. ESTÁGIO 03: DEPLOY STAGING Submit Code Build Unit Tests AGORA: Temos um ambiente com os requisitos mínimos para rodar nossa aplicação. Vamos executar nossos próximos testes nele! 40 s Staging Environment 01 m 200 testes 1 m
  • 18. ESTÁGIO 03: DEPLOY STAGING Submit Code Build Unit Tests AGORA: Para fazer o deploy nele, tivemos que criar um script de instalação e configuração da nossa aplicação!!! Ou seja, um passo confiável para termos um futuro deploy automatizado em produção!!! 40 s Staging Environment 01 m 200 testes 1 m
  • 19. NOSSO TIME HOJE (BASEADO EM FATOS REAIS)... - Não há testes unitários e, se existe algum, não são executados. - O QA tem um ambiente próprio na máquina dele. - O QA executa os testes manualmente apenas pela interface do sistema.
  • 20. - As vezes quando implanta a versão no cliente, ocorre problemas por causa do ambiente dele! “Na minha máquina funciona”... É, mas o cliente não vai comprar a sua máquina! NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
  • 21. ESTÁGIO 04: API TESTS Submit Code Build Unit Tests AGORA: TemosTestes de API (ou integração, ou serviços) !! Dos 60 que tínhamos, 40 eram possíveis de fazer via API. 40 s API Tests 01 m 200 testes 30 s 40 testes Staging Environment 1 m
  • 22. ESTÁGIO 04: API TESTS Submit Code Build Unit Tests 40 s API Tests 01 m 200 testes 30 s 40 testes Staging Environment 1 m FEEDBACK em menos de 04 minutos!
  • 23. ESTÁGIO 04: API TESTS Submit Code Build Unit Tests 40 s FEEDBACK: Mais um problema resolvido rapidamente e com custo baixo! Mais bugs em produção evitados! 01 m 200 testes API Tests 30 s 40 testes Staging Environment 1 m
  • 24. NOSSO TIME HOJE (BASEADO EM FATOS REAIS)... - Não há testes unitários e, se existe algum, não são executados. - O QA tem um ambiente próprio na máquina dele. - O QA executa os testes manualmente apenas pela interface do sistema.
  • 25. ESTÁGIO 05: ACCEPTANCE TESTS Submit Code Build Unit Tests AGORA: TemosTestes de Aceitação (ou/e end2end, ou/e funcionais) !! Dos 60 que tínhamos, apenas 20 necessitam ser testados via interface. 40 s Acceptance Tests 01 m 200 testes 10 m 20 testes Staging Environment 1 m API Tests 30 s 40 testes
  • 26. ESTÁGIO 05: ACCEPTANCE TESTS Submit Code Build Unit Tests AGORA: Achamos melhor paralelizar esses testes para ganhar alguns minutos!! Reduzimos 6 minutos!!! 40 s Acceptance Tests 01 m 200 testes 3 m 20 testes Staging Environment 1 m API Tests 30 s 40 testes
  • 27. ESTÁGIO 05: ACCEPTANCE TESTS Submit Code Build Unit Tests 40 s Acceptance Tests 01 m 200 testes 3 m 20 testes Staging Environment 1 m API Tests 30 s 40 testes FEEDBACK em menos de 07 minutos!
  • 28. ESTÁGIO 05: ACCEPTANCE TESTS Submit Code Build Unit Tests 40 s Acceptance Tests 01 m 200 testes 3 m 20 testes Staging Environment 1 m API Tests 30 s 40 testes FEEDBACK: Mais um problema resolvido rapidamente e com custo baixo! Mais bugs em produção evitados!
  • 30. - A cada liberação de versão ao cliente, o QA precisa testar uma suíte de 60 testes regressivos, isso hoje, pois esse número só vai aumentar!! Leva em torno de 2 dias, isso quando são executados! NOSSO TIME HOJE (BASEADO EM FATOS REAIS)...
  • 31. Redução de 02 dias para menos de 07 minutos!!!!!!!!!!!!
  • 32. - 02 dias para automatizar as novas funcionalidades; - 02 dias para testes exploratórios, aumentando mais ainda a cobertura; - 02 dias para revisar a documentação; - Tranquilidade sabendo que testei em um ambiente parecido com o de produção; - Ajuda dos desenvolvedores que agora têm feedback rápido dos bugs encontrados no CI e eles mesmos se prontificam a analisar e corrigir; EU COMO QA GANHEI...
  • 33. PRÓXIMOS ESTÁGIOS... Merge Request Build Unit Tests 40 s Acceptance Tests 01 m 200 testes 3 m 20 testes Staging Environment 1 m API Tests 30 s 40 testes OthersTests Automatic Deploy to Production Publish Documentation Code Review
  • 34. PRIMEIROS PASSOS PARA O QA FAZER DEVOPS - Gostar do que faz; - Dialogar com Business, Devs e Ops; - Saber programar (sim, tire da cabeça a frase “não gosto de programar”!); - Entender "por debaixo dos panos" como funciona a aplicação que você está testando; - DRY: dont repeat yourself: tudo que você faz e é recorrente, você deve automatizar; - Entender como funciona o ambiente em que se encontra a aplicação; Ref.: http://www.keeptesting.com.br/2014/12/01/7-passos-para-se-tornar-um-devops/