Teste de Software - Especialização Univem

download Teste de Software - Especialização Univem

If you can't read please download the document

Transcript of Teste de Software - Especialização Univem

  • Prof. Msc. Andr Abe VicenteTeste de SoftwareUma abordagem gil

  • Andr Abe VicenteBach. em Informtica (UNIOESTE PR)LabES - Engenharia de Requisitos Msc. ICMC-USP (So Carlos SP)LabES - Teste de Software e Agile Techne Eng. e SistemasLyceum Gesto Acadmica UOL e PagSeguro (2012 Atual)Soluo de Pagamentos Online

  • Minhas Atividades no PagSeguroProver ferramentas para facilitar o trabalho e melhorar a produtividade dos timesCanais e Parcerias, bandeiras de Voucher e Anlise de Risco.

  • ContedoConceitos Bsicos de Teste de SoftwareConceitos, Importncia, Tcnicas e CritriosTestes geisMtodos geis, Quadrantes do Teste (TDD, ATDD...), Papis do Time, Prticas e Ferramentas

    Automao de TestesConceitos e pirmide de testesTestes Unitrios: JUnit, Code Coverage ToolsTestes Funcionais: Selenium Webdriver (Locators e Page Objects)Testes de API: Postman + RestAssuredContinuous Integration e DeliveryIntroduo e Prtica

  • Alunos ?Dado alunos do curso de especializao da UnivemQuando os alunos descrevemNomeEmpresa, Cargo, Ramo de AtuaoExperincia com Teste de SoftwareO que espera do curso?Ento o professor conhece o perfil dos alunos da disciplina de Teste de Software

  • 1. Conceitos Bsicos de Teste de SoftwareConceitos, Importncia, Tcnicas e Critrios

  • Teste de SoftwareSoftware complexo e varivelRequisitos de qualidade (diferentes e incompatveis e domnios distintos)Objetivo: revelar a presena de erros ou defeitos no produto e aumentar a confiana de que o produto esteja correto (Myers et al., 2004). Aplicado em vrios estgios, com diferentes objetivos. Sistemas Flexveis: novos desafiosParadigmas de programao TecnologiasMicroservices, Agile

  • BugsAT&T suspendeu seu servio de longa distncia (1990)Self-test em um dos 114 switchs em NYC detectou que estava no seus limites de capacidade foi resetado automaticamente e acabou ocasionando um erro em cascata nos outros switchs.

    60 milhes de dlares e 500 vos atrasados

    Mais detalhes: http://users.csc.calpoly.edu/~jdalbey/SWE/Papers/att_collapse.html

  • BugsErro Matemtico no Chip Intel Pentium (1993) Falha na diviso de ponto flutuante. Exemplo: 4195835,0 por 3145727,0 o resultado apresentado pelo microprocesador era 1,33374 ao invs de 1,33382, um erro de 0.006%

    475 milhes de dlares

    Orbitador Climtico de Marte (1998)Medida de fora Libra/sec (Lockhead) >> Newton/sec 1 pound = 4,5 newtons125 milhes de dlares

  • BugsWindows bloqueando SOs que no eram piratas (2007)Por 19 horas todo usurios que tentavam instalar o Windows tomavam um erro falando que a cpia era ilegal (Windows Genuine Advantage)

    Apple Maps fornecendo trajetos errados (2012)Direes e lugares errados, Mapas 3D com problemas...Richard Williamson demitidoe parceria com TomTom

  • BugsApple Maps fornecendo trajetos errados (2012)

  • BugsApple Maps fornecendo trajetos errados (2012)

  • BugsApple Maps fornecendo trajetos errados (2012)

  • Bugs no BrasilCompanhia Area GBug: Cotao do dlar R$ 2,20 >> R$ 0,22Data: 15 de Maio de 2015Durao do bug: madrugada do dia 15/05 at 09 da manh

  • Bugs no BrasileSocialProblemas cadastro (lentido e erros internos) Out/2015Cadastrar frias, desligamentos, pagamentos pendentesLicena Maternidade, Aux. Doena continua pagamento INSS http://g1.globo.com/globo-news/jornal-globo-news/videos/v/especialista-tira-duvidas-sobre-problemas-no-site-e-social/5028003/

  • Bugs no BrasilEmpresa de Telefonia Celulares por R$ 9 (2012)

  • BugsComo lidar com Bugs?MonitoraoDelivery Minor, Rollback?Documentar ou no?Criticidade, Negcio/Produto22055

  • Problemas comuns de teste*No h tempo para o teste exaustivo. Muitas combinaes de entrada para serem exercitadas. Dificuldade em determinar os resultados esperados para cada caso de teste. Requisitos do software inexistentes ou que mudam rapidamente. No h tempo suficiente para o testeNo h treinamento no processo de teste. No h ferramenta de apoio. Massa de dados para teste.Gerentes que desconhecem teste ou que no se preocupam com qualidade. * Notas de Aula Prof. Auri Vincenzi

    Qual tcnica de teste aplicar em diferentes tipos de projetos de softwareSistemas Legados / Testabilidade, Manuteno e Cultura de Qualidade

    Dificuldades para Sistemas com Qualidade

  • TEORIA DETECTEDFases de TesteTcnicas e Critrios de Teste JUnit e Code Coverage

  • Fases de TesteTeste de UnidadeTem como foco as menores unidades de um programa, que podem ser funes, procedimentos, mtodos ou classes. Objetivo: revelar defeitos de lgica e implementao em cada unidade, fornecendo evidncias de que a unidade testada funciona adequadamente de forma isolada.

    Teste de Integrao: as diversas partes do software so integradas e executadas. Verificando se a interao entre elas funciona de maneira adequada e no leva a erros.

  • Fases de TesteTeste de Sistema: iniciado aps se ter o sistema completo, com todas as suas partes integradas e funcionando.Objetivo: detectar possveis erros na integrao do software com recursos (banco, servios) e plataforma (hardware).Cada funcionalidade ou comportamento especificado do sistema deve ser verificado.Tambm so observados requisitos no-funcionais.

  • Fases de TesteTeste de Aceitao: deve orientar a deciso de quando o produto em seu estado atual deve ser liberado.Verifica a adequao s necessidades do usurio.Bom o suficiente para ser implantado e usado em seu ambiente operacional.

    Teste de Regresso: realizado durante a manuteno do software. Cada modificao efetuada no sistema, aps a sua liberao, corre-se o risco de que novos defeitos sejam introduzidos.Novos requisitos e requisitos anteriormente testados.Integrao Contnua

  • Tcnicas e Critrios de TesteAbordagem sistemtica e teoricamente fundamentada para se conduzir e avaliar a qualidade do teste de software.

    A escolha do deve levar em contaRestries de qualidade, custo, prazo e recursos.

    Tcnica: definida pelo tipo de informao utilizada para realizar o teste (especificao, cdigo, histrico de defeitos...). Cada tcnica de teste possui um conjunto de critrios de teste. Sistematizar a forma de como os requisitos devem ser produzidos.

    Tcnicas e Critrios de Teste

  • Tcnicas de TesteFuncional: especificao do programa ou componente. Estrutural: estrutura do programa, cobertura do cdigo-fonte, fluxo de controle e dados. Baseado em Defeitos: utiliza informaes sobre tipos de erros frequentes. Baseado em Estados: modela comportamento do sistema ou unidade testada.

  • Tcnicas FuncionaisObjetivo: Reduzir significativamente o nmero de casos de teste em relao ao teste exaustivo.

    Divide o domnio de entrada em classes de equivalncia (vlidas e invlidas).Valor dentro do intervalo tem a mesma importncia, ou seja, qualquer valor escolhido adequado.

    Particionamento em Classes de Equivalncia

    Testa os limites das classes de equivalncia nos quais diferentes tipos de erros esto escondidos. Mais adequado para o teste de produtos com domnios de entrada divididos em intervalos ou conjuntos.

    Anlise de Valor Limite

  • Tcnicas FuncionaisParticionamento em Classes de EquivalnciaDividir a entrada e sada de domnios em classes de dados, vlidos e invlidos, de acordo com a especificao da funcionalidade. Um conjunto mnimo de casos de teste projetado contendo pelo menos um elemento representante de cada classe de equivalncia.

  • Tcnicas FuncionaisParticionamento em Classes de EquivalnciaDiferentes tipos de dados exigem diferentes tipos de classe de equivalncia.Duas classes invlidas e uma vlida. VlidoInvlidoRenda para Hipoteca (Contnuos)# de Pessoas (Discretos)

    R$ 1000,00/msR$ 83000,00/ms

    0123456

  • Tcnicas FuncionaisParticionamento em Classes de EquivalnciaDiferentes tipos de dados exigem diferentes tipos de classe de equivalncia.SimplesMltipla Escolha

    Classes VlidasClasses InvlidasPessoasCorporaesAssociaesCondomnioSobradoCasa TrreaDuplexTrailer

  • Tcnicas FuncionaisParticionamento em Classes de EquivalnciaRenda: R$ 1000,00 R$ 83000,00Moradores: 1 5Aplicante: PessoasTipo: Condomnio, Sobrado ou Casa Trrea

    Renda# MoradoresAplicanteTipoResultadoR$ 60003PessoasCondomnioVlidoR$ 1002PessoasCasa TrreaInvlidoR$ 900002PessoasCasa TrreaInvlidoR$ 21530PessoasCondomnioInvlidoR$ 21536PessoasCondomnioInvlidoR$ 21531AssociaoSobradoInvlidoR$ 21531PessoasDuplexInvlido

  • Tcnicas FuncionaisAnlise de Valor LimiteIdentificar as classes de equivalncia (requisitos de teste do critrio).Identificar os limites de cada classe. Criar casos de teste para os limites escolhendo:O ponto abaixo do limite | O limite | Um ponto acima do limite.(Copeland, 2004)

    0 idade 15 No empregar16 idade 17 Pode ser empregado em tempo parcial18 idade 54 Pode ser empregado em tempo integral55 idade 99 No empregar

  • Tcnicas Funcionais

    Prtica 1 Tcnicas Funcionais (JUnit IR)

    https://github.com/andvicente/JUnit_ImpostoRenda

  • Teste EstruturalA tcnica estrutural (caixa-branca) vista como complementar tcnica funcionalbaseia-se na estrutura de um programa para derivar os seus casos de teste.

    CritriosFluxo de controle: utilizam apenas caractersticas de controle de execuo do programa, como comandos ou desvios, para derivar os requisitos de teste necessrios. Fluxo de dados: definio e uso de variveis.

  • Teste EstruturalOs critrios mais conhecidos baseados em fluxo de controle so:Cobertura de Comandos (Todos-ns): exige que cada comando do programa seja executado ao menos uma vez.Cobertura de Decises (Todos-arcos) : objetivo fazer cada comando de deciso assumir os valores TRUE e FALSE. Cobertura de Condio: em geral, melhor que cobertura de deciso. Cada condio individual assume os valores TRUE e FALSE.Cobertura de decises/condies: requer que todas as combinaes sejam testadas....

  • Teste EstruturalCobertura de Comandos (todas linhas): foo(1,1)

    Cobertura de Decises

    foo(1,1) 2 condies IF true foo(0,1) 1 condio IF false

    Cobertura de Condies

    foo(1,1) x>0 (T) y>0 (T)foo(1,0) x>0 (T) y>0 (F)foo(0,0) x>0 (F) y>0 (F)

    int foo (int x, int y){ int z = 0; if ((x>0) && (y>0)) { z = x; } return z;}Exemplo:

  • Teste Estruturalint foo (int x, int y){ int z = 0; if ((x>0) && (y>0)) { z = x; } return z;}Exemplo:Cobertura de Decises / Condies

    foo(1,1) x>0 (T) y>0 (T)foo(1,0) x>0 (T) y>0 (F)foo(0,1) x0 (T) foo(0,0) x>0 (F) y>0 (F)

    Outros tipos de coberturaCobertura de Loop (1, 2 vezes, n vezes...)Cobertura de Caminhos: exige que todos os caminhos possveis do programa sejam executados (geralmente impraticvel)

  • ResumoTeste de SoftwareRevelar a presena de erros ou defeitos no produto e aumentar a confiana de que o produto esteja correto (Myers et al., 2004). Desafios: novos paradigmas, micro-services, cultura de testes.Fases de TesteTeste de Unidade, Integrao e Testes de Regresso (com Integrao Contnua)Tcnicas e Critrios de TesteTcnica: informao utilizada para criar o teste (especificao, codigo)Critrios: sistematizar a forma de como os casos de teste sero criadosFuncional: Anlise de Valor Limite e Classe de EquivalnciaEstrutural: Cobertura de Comandos, Decises, Condies, Caminhos

  • RefernciasDelamaro, M. E.; Maldonado, J. C.; Jino, M. Introducao ao teste de software (Conceitos Basicos) Rio de Janeiro, RJ: Elsevier, 2007. Vincenzi, Auri. Notas de Aula (Teste de Software) Instituto de Informtica (UFG), 2008.Bibliografia Sugerida: Auri Vincenzi, Jos Carlos Maldonado e Mrcio Delamaro - Automatizao de Teste de Software - com nfase em Ferramentas Open Source - http://napsol.icmc.usp.br/ats/

  • Code CoverageJUnit e Ferramentas de Cobertura

  • 2. Testes geisMtodos geis, Quadrantes do Teste (TDD, ATDD...), Papis do Time, Prticas e FerramentasAgilidade: adotar e reagir rapidamente a mudanas no ambiente e clientes.

  • Mtodos geisMudanas: necessidades do cliente (satisfao). No podem afetar: cronograma e oramento. Mtodos geis: valores, princpios e boas prticas de desenvolvimento e conduo de projeto.

    Mudanas e Mtodos geis

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Mtodos geis

    Indivduos e interaesmais que processos e ferramentasSoftware em funcionamentomais que documentao abrangenteColaborao com o clientemais que negociao de contratosResponder a mudanasmais que seguir um planoManifesto gilEstamos descobrindo maneiras melhores de desenvolver software, fazendo-o ns mesmos e ajudando outros a fazerem o mesmo. Atravs deste trabalho, passamos a valorizar:http://www.manifestoagil.com.br

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Mtodos geis

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Mtodos geisSatisfazer o cliente com entregas rpidas e frequentes.Entrega incremental de software deste as etapas iniciais.Solues simples, pequenos ciclos de desenvolvimento.Processos eficientes para gerar produtos de qualidade (cronograma, menos defeitos, usurios satisfeitos).Colaborao com o cliente.Aprendizagem e melhoria contnua.

    Mtodos de Desenvolvimento gilProjetos grandes e complexos, Cultura Agile, garantir a qualidade com menos processos.

    Dificuldades Agile

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Testes geisExecutado com frequncia para detectar defeitos o mais cedo possvel (ciclos iterativos e curtos).Constante feedback do cliente. Testando sob o ponto de vista do cliente (aceitao).Execuo de testes manuais por meio de teste exploratrios

    Caractersticas Testes geisTodo mundo no time de desenvolvimento igualmente responsvel pela qualidade e sucesso do projeto.The Whole Team-Aproach

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Testes geisO foco no desenvolvimento agil produzir software de qualidade em um prazo que maximize o valor para o negcio. Esse o trabalho de todo o time, no somente os testes ou profissionais designados para garantia de qualidade.

    Todos em um time gil ficam infectados pelo teste. Testes, do nvel de unidade para cima, devem guiar o cdigo, ajudar o time a aprender como a aplicao deve funcionar e deixam nos saber quando uma task ou histria est terminada.by Lisa Crispin and Janet GregoryTodo Time responsvel pela Qualidade

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Quadrantes de Testes geis

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Quadrantes de Testes geisBrian Maricks (2003) fez duas distinesTestes voltados para tecnologia vs negciosTestes que do apoio ao time vs que criticam/avaliam o produto.

    QuadrantesQ1 Testes tecnolgicos que guiam time.Q2 Testes de negcio que guiam o time.Q3 Testes de negcio que avaliam o produto.Q4 Testes tecnolgicos que avaliam o produto.

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Pirmides de Testehttp://martinfowler.com/bliki/TestPyramid.htmlhttps://www.thoughtworks.com/insights/blog/introducing-software-testing-cupcake-anti-pattern https://testing.googleblog.com/2015/04/just-say-no-to-more-end-to-end-tests.html

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Quadrantes de Testes geisBrian Maricks (2003) fez duas distinesTestes voltados para tecnologia vs negciosTestes que do apoio ao time vs que criticam/avaliam o produto.

    QuadrantesQ1 Testes tecnolgicos que guiam time.Q2 Testes de negcio que guiam o time.

    Prevenir defeitos antes e durante o desenvolvimento

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Quadrantes de Testes geisBrian Maricks (2003) fez duas distinesTestes voltados para tecnologia vs negciosTestes que do apoio ao time vs que criticam/avaliam o produto.

    QuadrantesQ3 Testes de negcio que avaliam o produto.Q4 Testes tecnolgicos que avaliam o produto.

    Encontrar defeitos e descobrir funcionalidades, mas com o entendimento de que queremos encontrar esses defeitos o mais rpido possvel.

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Quadrantes de Testes geisBrian Maricks (2003) fez duas distinesTestes voltados para tecnologia vs negciosTestes que do apoio ao time vs que criticam/avaliam o produto.

    No tem relao com quando os testes so feitos.Depende de riscos de cada projetoObjetivos do cliente para o produtoProjeto com cdigo legado ou novoQuando os recursos esto disponveis para o teste

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Quadrantes de Testes geishttp://www.slideshare.net/dwhelan/agile-testing-and-the-role-of-the-agile-tester

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Q1 - Testes de Unidade e Componentes Testes de Unidade e ComponentesAjuda os desenvolvedores a entender exatamente que cdigo necessrio para implementar uma funcionalidade.Qual o melhor design para ele (TDD + Clean Code). Rapidez no feedback, detectar os erros antes.Infra-estrutura: versionamento de cdigo, gerncia de configurao e integrao contnua.

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Q1 - Testes de Unidade e Componentes Mocks Teste de unidade: testar a classede maneira isolada, sem qualquerinterferencia das classes que a rodeiam. bug em uma unidade no afeta testes da outraAcelera preparao ou execuo dos testesPermite testar mesmo que algum componente no esteja pronto ou disponvel.Mockar classes que lidam com infra-estrutura

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Test Driven Development (TDD)Explorar, projetar, desenvolver e testar o softwaremenos defeitos, desenvolvedores mais confiantes (mudanas), melhoria qualidade do cdigoverificar se o projeto e decises arquiteturais foram apropriadas, menos tempo de depurao (produtividade)

    Benefcios: cdigo de melhor qualidade

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Test Driven Development (TDD)ANICHE, M. Test-Driven Development: Teste e Design no Mundo Real, 2012.Prtica 3 Test Driven DevelopmentNmeros Romanos

    https://github.com/andvicente/TDD_EXEMPLO

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Test Driven Development (TDD)Cdigo de Melhor Qualidade diminuio de defeitos.Design: LOC, Complexidade, Coeso e Acoplamento (David Janzen) Facilita comunicao, mudanas ocorrem mais naturalmente. Usurios mais satisfeitos.

    TDD difcil de ser aplicado: nova forma de desenvolvimento. Maior tempo para desenvolvimento de cdigo-fonte.

    Dificuldades

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Q2 Testes de Negcio (BDD)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Q2 Testes de Negcio (BDD)Customer-facing tests (qualidade externa e funcionalidades que os clientes desejam).Baixa qualidade na comunicao entre os especialistas de domnio e o time.Tradicional: stakeholders passam os requisitos ao time sem muita oportunidade para feedbackAgile: os desenvolvedores e stakeholders colaboram para escrever testes automatizados que expressam o que os stakeholders querem

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Q2 Testes de Negcio (BDD)Testes de aceitao expressam o que o software precisa para que os stakehoders achem esse aceitvel.

    Testes como exemplos que qualquer um pode ler.Obter feedback dos stakeholders se estamos definindo da forma correta o que ser construido antes do desenvolvimento comear.

    Behavior Driven Development (BDD)Dado um contexto inicial Quando um evento ocorre Ento assegure alguns resultados

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Q2 Testes de Negcio (BDD)BDD (Given-When-Then)Feature: Registrar-se no PagSeguroRegistrar-se deve ser rpido e amigvel

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Cenrio: Registrar-se no PagSeguro com sucessoNovos usurios devem receber um e-mail de confirmao e Receber uma mensagem personalizada do site quando estiver logado.

    Given Eu escolhi me registrarWhen Eu me registro com dados vlidosThen Eu recebo uma email de confirmaoAnd Eu vejo uma mensagem de boas vindas personalizadaQ2 Testes de Negcio (BDD)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • CucumberFeature e Steps (Java)https://cucumber.io

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • https://github.com/taisedias/selenium-cucumber

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Cultura gil Spotify (and Agile Companies)Organizao dos Times Backend Devs, QAs, Frontend DevsADs / DBAs, Implantao / Operaes Times de Infra Grupos de Interesse (Continuous Delivery, Coaching, Qualidade/Testes)Fonte: https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-1/

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Cultura gil Spotify (and Agile Companies)Entregas + Feature TogglesReleases separados, Fatiar Monoltico (DESAFIO!)Entregas (Trens de Entrega, Caronas)Chaveamentos (Usurio, Porcentagem, Testes A/B)Fonte: https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-2/

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Monitoramento em ProduoAcompanhamento Delivery e PsMonitoramento Operaes, Relatrios de Erros 500, BancoAcompanhamento Funcionalidades (Erros, Negcio)

    Cultura gil Spotify (and Agile Companies)Payment Gateway Real - Time Monitoring with Splunk! Marcio Ghiraldelli @ SplunkConf 2013

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Prtica 4 Monitoramento em Produo

    O que Monitorado ou poderia ser na sua empresa?Monitoramento de Atributos TcnicosMonitoramento de Negcio

    20 - 30 min

    Exerccio Monitorao

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Agile Tester

    Dimenso de NegcioEntender contexto do negcioPair com desenvolvedores para alinhar o que deve ser feitoLado racional do PO (priorizar, simplificar, alternativas)BDD, Testes de Aceitao, Specification by Examplehttps://www.thoughtworks.com/pt/insights/blog/agile-tester-30

    Andr Abe Vicente (AAV [2]) - Times com conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. Andr Abe Vicente (AAV [3]) - Conhecimento de como o negcio funciona permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. Isso no previne bugs de irem para produo, mas testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Agile TesterDimenso TcnicaTcnicos com boa habilidade de programaoPair programming com devsboas prticas como clean code e patternsescrever testes, revisar cdigo e at ajudar a depurar problemas Conhecimento em automao, ajudam a escolher os frameworks de teste.Importante: conhecer arquitetura do sistemaMais do que interface: monitorao, logs, mensageria, protocolos de comunicao.

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Agile TesterDimenso DevOpsPipeline de integrao contnuaConfigurao de scriptsPrtica de Entrega Contnua

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • 3. Automao de TestesJUnit + Coverage, Selenium Webdriver, Postman + Rest-assured

  • Ferramentashttps://zeroturnaround.com/rebellabs/java-tools-and-technologies-landscape-2016

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Stack Ferramentas Ferramentas Qualidade e Testes

    Delivery Contnuo +

  • FerramentasTestes UnitriosJUnit, Code Coverage Tools

    Bug Tracking Tools

    Testes FuncionaisSelenium Webdriver (Locators e Page Objects)

    Testes de APIPostman + RestAssured

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitDesenvolvido em 1997 por Erich Gamma e Kent Beck.Framework livre para apoiar teste de unidade de programas Java, facilitando a escrita de testes automatizados. Importante para teste de regresso: testes podem ser reexecutados automaticamente. Integrao com as principais IDEs e grande comunidade de usurios. Assertivas para testar resultados esperadosFixtures para reutilizao de dados para testeTest Suites para organizar e executar conjuntos de testes Interface grfica e textual para execuo de testes

    Funcionalidades inclusas

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitTeste unitrio com JUnitDado uma classe CartaoCredito, criar outra classe CartaoCreditoTest para testar ela, contendo vrios mtodos de casos de teste para executar.Cada caso de teste procura resultados especficos e passa ou falha.JUnit fornece comandos "assert" para nos ajudar a escrever testes.Colocar chamadas a asseres em seu mtodo de teste para checar coisas que voc espera ser verdade. Se elas no forem, o teste ir falhar.

    A ideia

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitClasse de Testes: estender a classe TestCase (extends TestCase).A classe pode conter mais de um mtodo de teste (caso de teste)Assertivas: verificar se o teste passou ou falhou.

    MtodoDescrioTeste passa seassertEquals(a,b)Compara dois valoresa.equals(b)assertFalse(a)Avalia uma expresso boleanaa == falseassertTrue(a)a == trueassertNotNull(a)Compara uma varivel com nuloa != nullassertNull(a)a == nullassertNotSameCompara dois objetosa == bassertSamea !=bfail()Causa uma falha no teste atual

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitJUnit 5 (Lambda, Assumptions ...)

    https://www.infoq.com/articles/JUnit-5-Early-Test-Drive

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitJUnit 5 (Lambda, Assumptions ...)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitImportar os seguintes pacotesimport org.junit.Test eimport static org.junit.Assert.*

    AnnotationDescrio@BeforeClassRoda somente uma vez antes de todos os testes da classe@BeforeAntes de cada caso de teste@TestIdentifica o caso de teste@AfterDepois de cada caso de teste@AfterClassRoda somente uma vez aps todos os testes da classe

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnit Hamcresthttp://www.vogella.com/tutorials/Hamcrest/article.html

    GeraisLista Maps e ArraysallOfe anyOfIgualdade entre objetos usando equals: equalToCompara tipos: instanceOf,isCompatibleTypeNull: notNullValue,nullValueassertThat(list, hasSize(3));assertThat(list, contains(5, 2, 4)); assertThat(list, containsInAnyOrder(2, 4, 5));assertThat(list, everyItem(greaterThan(1)));MAP: hasEntry,hasKey,hasValueColeo: hasItem,hasItemsArray: hasItemInArray

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnit Hamcresthttp://www.vogella.com/tutorials/Hamcrest/article.html

    NmerosStringsFloat: closeTo Comparar Nmeros greaterThan,greaterThanOrEqualTo,lessThan,lessThanOrEqualToequalToIgnoringCaseequalToIgnoringWhiteSpacecontainsString,endsWith,startsWith

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • JUnitImportar os seguintes pacotesimport org.junit.Test eimport static org.junit.Assert.* ALT + ENTER

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Code Coverage ToolsCobertura (open source)JaCoCo / Emma / EclEmma (open source) JaBUTi (Java Bytecode Understanding and Testing)CodeCover (open source) Atlassian Clover (commercial)

    Ferramentas

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Exerccios JUnit + CoberturaPrtica 2 JUnit + CoberturaTestes Carto (Validao - Luhn e BIN)

    https://github.com/andvicente/Cartoes-CodeCoverage

    Exemplo: 4556727112881899

    Voltar Cobertura de Cdigo

    Carto99818821172765542x Digitos Pares918828162211421461058Somar Digitos9982872215256158

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • 100% de Cobertura de Cdigo?No mostra a qualidade do cdigo de testes.Apenas mostra que um pedao de cdigo foi executado.Entenda sua aplicao e encontre reas com risco e estabelea uma meta.Fizemos testes suficientes?Voc raramente pega bugs em produo.Voc raramente exita em mudar um pedao de cdigo com medo de causar bugs em produo.http://martinfowler.com/bliki/TestCoverage.html

  • 100% de Cobertura de Cdigo?Configure a metrica para ignorar getters e setters, e todas as outras classes que voce ja sabe que nao escrevera testes. Brian Marick

    http://www.exampler.com/testing-com/writings/coverage.pdf Testes esto te atrasando. Mudanas simples no cdigo geram muita refatorao nos testes.Trechos que no valem a pena serem testados de forma isolada ou so simples demais.

    Testando Muito?

  • Bug Tracking ToolsMantis: http://www.mantisbt.org RedMine: http://www.redmine.org Bugzilla: http://www.bugzilla.org JIRA: http://www.atlassian.com/software/jira Trello, You Track (Jet Brains)

    Testlink - Especificao http://www.teamst.org

    Integrao entre ferramentas!

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Seleniumhttp://seleniumhq.org 2004 Jason HugginsSimon Stewart 2006 (Google)Testes Funcionais (Integrao)Escrever testes em vrias linguagensSuporte a Mltiplos NavegadoresFrameworks de Teste: JUnit,TestNG, NUnit, rspechttp://seleniumhq.org/about/platforms.html

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • SeleniumSelenium IDE: record/play no FirefoxSelenium RC e Selenium WebdriverSelenium RCinjeta funes javascript no navegador quando a pgina carregada.Selenium WebDrivercontrola o navegador utilizando o suporte suporte interno do navegador.Selenium Grid: executar testes em paralelo (mltiplas mquinas ou VMs). Integrao Contnua

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Selenium WebdriverSelenium vs Selenium 2 (WebDriver)Extenses ou recursos nativos oferecidos pelo prprio navegador para control-lo diretamenteMais rpido e API mais legvelCaixas de dilogo (por exemplo download e upload)Suporte para Drivers Mobile: Android e iOSLinguagens: Java, Ruby, Python, C#Suporte de Fabricantes de Navegadores: Opera, Mozilla e GoogleNo precisa do Selenium Server

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Selenium WebdriverXPath e CSS LocatorFirefinder (Firefox)Developer Tools (Chrome) ctrl/ + alt / + i

    CSS LocatorsMais rpidoMais fcil de ser lido CSS: span[name='cars]Xpath://body//div/spn/span/table/tr/tr/tr/td/td/td/td/span[@name='cars']Estratgia de localizao do jQueryhttp://www.w3schools.com/cssref/css_selectors.asp http://goo.gl/41NXK (Sauce Labs)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Selenium WebdriverXPath e CSS LocatorDeveloper Tools (Chrome) ctrl/ + alt / + i

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Page ObjectsRepresenta a tela de uma aplicao web como uma srie de objetos e encapsula funcionalidades de uma pgina.Separao de mtodos de negcio por telaTelaHome.abrir( )TelaHome.logar(String login, String senha)TelaHome.logoff( )

    Reduz a duplicao de cdigoFaz com que os testes sejam mais legveis e robustosMelhoram a manutenibilidade, particularmente quando h mudanas frequentes na aplicao.

    Vantagens

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Selecionando Elementos CSS-Locators (ID, Classe, Seleo de Elementos)

    # label#senha ou #senhaSeleciona Elemento label com id senha.table.extratomensalSeleciona tabela com classe extratomensalElementpSeleciona todos elementos pElement,Elementdiv,pSeleciona todos os elementos e Element elementdiv pSeleciona todos os elementos dentro dos elementos Element > element div > pSeleciona todos os elementos p onde o seu pai o elemento div.

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Selecionando Elementos CSS-Locators (Tipos e Filhos)
  • Selecionando Elementos CSS-Locators (Atributos)

  • Selenium Mtodos Selenium (Abstrao Webdriver)

    selenium.click(locator)selenium.type(locator)selenium.selectByVisibleTextselenium.selectByValueselenium.check(locator)selenium.uncheck(locator)selenium.click(locator)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Selenium Mtodos Selenium (Abstrao Webdriver)

    Textoselenium.assertTextselenium.assertTextPresent / notPresentPresena e Visiblidade de Elementosselenium.assertElementPresent / notPresentselenium.assertVisibleOutrosselenium.getTitle()selenium.takeScreenshot()

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Exerccios Selenium WebdriverPrtica 5 Selenium Webdriver

    https://github.com/andvicente/SeleniumWebdriver-AulaUnivem

    Busca GoogleCmbio de Moedas (UOL Economia)Limite Cota Viagens ExteriorTripAdvisor (Busca de Vos)Buscar Vo mais barato sem paradasDiferena de Preo com parada e sem paradaCampeonato BrasileiroClassificados Brasileiro e UEFA Champions League

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Testes de APIPostman - https://www.getpostman.com/docs/ Aplicao para criar rapidamente requisies de API RestCriar CollectionsEnvironments (Local, Produo)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Testes de API

    REST-assured uma DSL Java para simplificar o teste de sistemas baseados em servios REST.http://rest-assured.io Suporte para requisies: POST, GET, PUT, DELETE, OPTIONS, PATCH e HEAD.Pode ser utilizado para verficar a resposta de requisies (JSON ou XML)Validar cabealho e status de resposta

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Exerccios Rest-assuredPrtica 6 Testes de API (Rest-assured)

    https://github.com/andvicente/api-testing-rest-assured

    Spotify Playlistshttps://developer.spotify.com/web-api Checkout PagSeguro (Sandbox)https://dev.pagseguro.uol.com.br Criao Checkout Sandbox (https://sandbox.pagseguro.uol.com.br )Pagamento com Carto de Crdito (Selenium)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • 4. Continuous Integration and DeliveryIntroduo e Prtica

  • +Continuous Integration and Delivery

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • +Continuous Integration and Delivery

    https://www.thoughtworks.com/continuous-delivery

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • Continuous Integration and Delivery (PS)Evoluo Arquitetura do PagSeguroMonoltico (Micro)servios

    https://www.infoq.com/br/presentations/apache-mesos-para-operar-grandes-sistemas-e-microservicos

    Administrar o CAOS Delivery ContnuoCultura de Qualidade & Melhoria Contnua Times RemotosDesafios

  • +Continuous Integration and DeliveryCI: Cdigo integrado a um repositrio com a maior frequncia possvelProcesso de Build rpido, automatizado e incluindo testesFeedback Frequente CD: Facilitar o processo de entrega em produo

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • +Continuous Integration and Delivery

    More Agile Testing: Learning Journeys for the Whole Team (Janet Gregory and Lisa Crispin)

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • +Prtica 7 Continuous Integration

    JUnit+ JaCoCo + Slack integrationBuild Pipeline

    https://github.com/andvicente/Cartoes-CodeCoverage

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • +Continuous Integration and Delivery (Referncias)https://dzone.com/articles/get-started-with-jenkins-20-with-dockerhttps://www.docker.com/products/docker-toolbox

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • O que no cobrimos na disciplina

    MocksEx.: EasyMock, MockitoTeste BDDEx.: Cucumber, ConcordionTeste de Carga / PerfomanceEx.: JMeter, LOCUST, BlazeMetter, Flood.ioTeste MobileEx.: Appium, Robotium, Selendroid

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

  • FIM

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*

    - PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?- Conhecimento amplo e profundo do negcio podem ajudar melhor os POs a priorizar funcionalidades, simplificar solues, ou at oferecer alternativas fora do software atual para resolver um problema. - Permite que voc explore o software das mesmas maneiras que o usurio final ir utiliza-lo. - Previne bugs de irem para produo, - Testers e outros membros do time com domnio de negcio tambm podem idias interessantes para novas funcionalidades.*- PagSeguro: semana de IMs, reunio de QAs, Atendimento, como utilizam?-