Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Qualidade no modelo ágil

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

Qualidade no modelo ágil

Workshop sobre práticas de agile testing

Avatar for Josenildo Amorim

Josenildo Amorim

September 04, 2018

Other Decks in Technology

Transcript

  1. "Definimos um agile tester dessa maneira: um profissional que aceita

    mudanças, colabora bem com o lado técnico e de negócio e compreende o conceito de usar testes para documentar requisitos e impulsionar o desenvolvimento." LISA CRISPIN / JANET GREGORY - AGILE TESTING
  2. Procura Bug Garante que os requisitos sejam atendidos Resistentes à

    mudança Qualidade é responsabilidade do testador Trabalha separado do time Teste é uma fase Teste no final do desenvolvimento Previne Bug Garante que as expectativas sejam claras Aceita novas ideias Qualidade é responsabilidade do time Trabalha junto ao time Teste é uma atividade Teste durante o desenvolvimento Modelo tradicional x Modelo Ágil
  3. Pirâmide de Automação de Testes “Ideal” “Sorvete” - Anti Padrão

    X Automated GUI Tests Integration Tests Unit Tests Manual Tests
  4. - Participação das imersões - Definição de critérios de aceite

    - Definição de regras de negócio - Pesquisa com usuário - Escrita de cenários atual/futuro - Automação - Refinamentos - Testes alfa/ beta - Testes de usabilidade - Feedback de usuários
  5. Em conjunto com Desenvolvedores Refinamento Planning Sprint Review - Pensar

    em cenários - Questionar os critérios - Começar a pensar em como testar - Ajudar no mapeamento dos fluxos - Tarefas de Teste: - qual nível de automação? - ambiente - massa de dados - regressão - novos tipos de teste? - Escrever cenários - Dividir os testes de acordo com a pirâmide - Implementar testes automatizados - Fazer testes exploratórios - Pair com desenvolvedores - Apresentar os testes automatizados de interface e os cenários Em conjunto com PO + Designer Em conjunto com DevOps Em conjunto com Designer
  6. QA na Concrete - Escrita de cenários com cucumber (BDD)

    - Participação ativa das definições de negócio/ produto - Definição conjunta com time de testes por camadas - Automação em diversas camadas com ferramentas open source - Cenários disponíveis para time e cliente - Integração contínua
  7. Escrevendo cenários de teste - Linguagem Gherkin - Foco no

    negócio, não nas soluções - Documentação viva e de fácil manutenção - Evitar retrabalho - Fácil entendimento de todos envolvidos no projeto
  8. Melhores práticas na escrita de cenários - Evite citar elementos

    da interface do usuário - Clicar em um botão, navegar para página, marcar um optionButton, abrir o comboBox, etc... - Inclua uma narrativa (Dado / Como/ Então) - Uma ação por step (modular e reutilizável) - cuidado ao utilizar muitos "E" - Reusar step quando um step se repete em várias situações; - Use a linha de contexto se os mesmos steps devem ser executados antes de cada cenário;
  9. O que há de errado com esse cenário? Funcionalidade: Pesquisa

    no google Cenário: Pesquisa Dado que eu tenha aberto o navegador E tenha acessado a página do Google E tenha clicado Enter Quando eu digito a palavra Globo E pressionar o botão Pesquisa Google Então devo ver os resultados referentes a Globo
  10. Exemplo de cenário Funcionalidade: Pesquisa no google Contexto: Dado que

    eu esteja na tela inicial do Google Cenário: Pesquisa de uma palavra Quando eu pesquiso pela palavra “Globo” Então devo ver os resultados referentes a Globo
  11. VAMOS AO DOJO - Em duplas - Tempo por duplas:

    4 min ou até atingir a meta - Platéia não interrompe - Tirar dúvidas - Dupla: a qualquer momento - Platéia: na troca entre duplas URL da Loja: https://lojinha-do-josenildo.lojaintegrada.com.br/ REGRAS
  12. DOJO - Cenários História: Como cliente Para facilitar a compra

    de um produto Quero pesquisar um produto na loja Critérios de Aceite: - Pesquisar pelo nome completo - Pesquisar por parte do nome - Se o produto não estiver em estoque, exibir indisponível - Caso o produto não exista, exibir mensagem de aviso de produto inexistente
  13. Automatizando os cenários - Steps definitions: - Integração entre os

    arquivos features e os métodos de teste - Page Objects: - Design pattern que visa manutenibilidade e reúso - Rapidez para localizar o código - Facilidade para realizar alterações - Melhor organização - Padronização
  14. Exemplo de elementos e métodos - Declarando um elemento: x

    = $(‘elemento’)) - Declarando um array: x = $$(‘elemento’)).get(posicao) - Digitando um texto: elemento.sendKeys(“texto_a_ser_digitado”) - Clicando em um elemento: elemento.click() - Clicando ENTER: elemento.sendKeys(protractor.Key.ENTER)
  15. NÓS MOVEMOS O MUNDO. Centro Av. Presidente Wilson, 231 29º

    andar (21) 2240-2030 Cidade Monções Av. Nações Unidas, 11.541 3º andar (11) 4119-0449 Savassi Av. Getúlio Vargas, 671 Sala 800 - 8º andar (31) 3360-8900 Ilha do Leite Rua Sen. José Henrique, 199 2º andar (81) 3018-6299 WWW.CONCRETE.COM.BR