Relato de Experiência em Testes de Software Funcional com Selenium
Agile e Testes: Um Relato de Experiência da Indústria
-
Upload
andre-abe-vicente -
Category
Education
-
view
38 -
download
0
Transcript of Agile e Testes: Um Relato de Experiência da Indústria
Agile e TestesUm Relato de Experiência da Indústria
Msc. André Abe VicenteEspecialista de Qualidade - PagSeguro UOL
andvicente @ gmail comlinkedin.com/andvicente
Março / 2017
André Abe Vicente
▶ Testes & Agile (MSc. LabES - ICMC-USP) ▶ [2010 – 2012] Techne Eng. e Sistemas
Lyceum – Gestão Acadêmica▶ [2012 – atual] PagSeguro UOL
Prover ferramentas para facilitar o trabalho e melhorar a produtividade dos times
Canais e Parcerias, bandeiras de Voucher e Análise de Risco.
Agenda
Agile e Testes no PagSeguro
Ferramentas & Boas Práticas (Indústria)
Integrações + PagSeguro Developers
Agile & Testes no PagSeguro
Escalabilidade: aumento dos times de P&D, Produtos, Comercial...
Venda Presencial (2012): NFC, Leitor Tarja e Bluetooth, Pré-Pago e Moderninha
2012 - Atual
Scrum (2008)*
* [Maranzato et. al.,2012] Scaling Scrum Step by Step: "The Mega Framework", Agile Conference.
Solução de Pagamentos
Agile & Testes no PagSeguro
Executado com frequência para detectar defeitos o mais cedo possível (ciclos iterativos e curtos).
Constante feedback do cliente. Testando sob o ponto de vista do cliente (aceitação). Execução de testes manuais por meio de teste
exploratórios
Características Testes Ágeis
Todo mundo no time de desenvolvimento é igualmente responsável pela qualidade e sucesso do projeto.
The Whole Team-Aproach
Agile & Testes no PagSeguro
“O foco no desenvolvimento agil é produzir software de qualidade em um prazo que maximize
o valor para o negócio. Esse é o trabalho de todo o time, não somente os testes ou profissionais
designados para garantia de qualidade.”
“Todos em um time ágil ficam “infectados pelo teste”. Testes, do nível de unidade para cima,
devem guiar o código, ajudar o time a aprender como a aplicação deve funcionar e deixam nos saber quando uma task ou história está
terminada.”
by Lisa Crispin and Janet Gregory
Todo Time responsável pela Qualidade
Agile & Testes no PagSeguro
Equipe P&D ≈ 300, 1,5MLOC, ≈22 mi requisições/dia Monolítico: perfomance do time, confiança na entrega,
experimentar… Arquitetura “on premise”, virtualização (performance)
Problema e Como Resolver?
Fonte: https://www.infoq.com/br/presentations/apache-mesos-para-operar-grandes-sistemas-e-microservicos
Agile & Testes no PagSeguro
Evolução Arquitetura do PagSeguroMonolítico (Micro)serviços➡️
https://www.infoq.com/br/presentations/apache-mesos-para-operar-grandes-sistemas-e-microservicos
Administrar o CAOS 😨Delivery Contínuo
Cultura de Qualidade & Melhoria Contínua Times Remotos
Desafios
Ferramentas e Boas Práticas
▶ Ferramentas Qualidade e Testes
▶ Delivery Contínuo
+
VER GOOGLE: java and technologies rebellabs
Ferramentas e Boas Práticas
▶ Organização dos Times ▶ P&D: Backend Devs, QAs, Frontend Devs,
ADs / DBAs, Implantação / Operações, UX e UI , Produtos▶ Feature Teams▶ Grupos de Interesse (Delivery Contínuo, Coaching,
Qualidade/Testes…)
Fonte: https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-1/
Ferramentas e Boas Práticas
▶ Entregas + Feature Toggles▶ Releases separados▶ Entregas (Trens de Entrega, Caronas)
Fonte: https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-2/
Ferramentas e Boas Práticas
▶ Entregas + Feature Toggles▶ Releases separados▶ Entregas (Trens de Entrega, Caronas)▶ Chaveamentos (Usuário, Porcentagem, Testes A/B)
Fonte: https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-2/
Ferramentas e Boas Práticas
▶ Entregas + Feature Toggles▶ Releases separados▶ Entregas (Trens de Entrega, Caronas)▶ Chaveamentos (Usuário, Porcentagem, Testes A/B)
Fonte: https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-2/
▶ Monitoração em Produção▶ Acompanhamento Delivery e Pós▶ Monitoração Operações, Relatórios de Erros 500, Banco▶ Acompanhamento Funcionalidades (Business Dashboards, Erros)
Ferramentas e Boas Práticas
Payment Gateway Real - Time Monitoring with Splunk! Marcio Ghiraldelli @ SplunkConf 2013
Perfil QA / Agile Testers
▶ Dimensão de NegócioBDD | Comunicação |Especificação
▶ Dimensão TécnicaSkills desenvolvimento | Pair com Devs | TDD e Código Limpo Automação de Testes| Testes de Perfomance e Segurança
▶ Dimensão DevOPS Pipelines | Continuous Integration | Tarefas Repetitivas
* https://www.thoughtworks.com/insights/blog/agile-tester-30by Daniel Amorim - Thoughtworks
Dificuldades Contratação
Formação sólida em TIConceitos de teste | Desenvolvimento | AutomaçãoSQL | Agile | ...
Investigação de ProblemasArquitetura | Processamento Assíncrono | Logs Linux | Banco | ...
PagSeguro | Developers
Como manter sempre atualizada? Facilitar a vida do desenvolvedor para Integrações?
Problema: Documentação de APIs públicas
http://swagger.io
https://dzone.com/articles/documenting-your-spring-api
PagSeguro | Developers
Como manter sempre atualizada? Facilitar a vida do desenvolvedor para Integrações?
Problema: Documentação de APIs públicas
PagSeguro | Developers
PagSeguro | Developers
Integrações
Notificação de Transações Consulta de Transações Cancelamento de Transações Pagamento Recorrente (Assinatura) Split Payment Modelo de Aplicação ...
https://dev.pagseguro.uol.com.br/documentacao
Outras APIs
•https://dev.pagseguro.uol.com.br/referencia-da-api/api-de-pagamentos-pagseguro
Integrações
Referência da API
Integrações
Live Demo (Checkout API)
Dúvidas?
andvicente @ gmail comlinkedin.com/andvicente
Integrações
Cliente é direcionado para página do PagSeguro para fazer o pagamento e concluir a compra
Padrão
Integrações
Uma janela será aberta dentro do seu site para o cliente fazer o pagamento
Lightbox
Integrações
O cliente fica no ambiente de compra do seu site durante todo o processo de compra
Checkout Transparente
Integrações
Integre o seu aplicativo com o checkout PagSeguro, sem redirecionamentos e com pagamento em apenas 1 clique.
Checkout in APP
Integrações
Recursos para Integração
https://sandbox.pagseguro.uol https://comunidade.pagseguro.uol
https://github.com/pagseguro