www.qualister.com.br
(48) 4052-9536 / [email protected]
Agile Testing
• Terceirização de profissionais
• Consultoria de teste• Avaliação de usabilidade• Automação de testes• Testes de performance• Treinamentos 2˚ Encontro GTS-CE
05 de Abril de 2014 – Fortaleza, Ceará
www.qualister.com.br
Sobre o Palestrante
Elias NogueiraQA Engineer, Consultor de Teste na Qualister
Email: [email protected]
Blog: http://eliasnogueira.com
Blog: http://qualister.com.br/blog
Twitter: @eliasnogueira
Twitter: @qualister
SlideShare: http://slidshare.net/elias.nogueira
www.qualister.com.br
Sobre a Qualister
• Fundação: 2007.• Sobre a Qualister: A Qualister é uma empresa nacional, constituída a partir da união
de profissionais qualificados e certificados na área de testes e qualidade de software, com o objetivo de integrar, implementar e implantar soluções com base nas melhores práticas do mercado e normas internacionais.
• Colaboradores: A Qualister é composta por colaboradores pós-graduados e certificados na área de testes (CBTS, CSTE) com larga experiência na indústria de Tecnologia da Informação.
• Área de atuação: A Qualister é uma empresa especializada em serviços de qualidade e teste de software. Tem como linhas de atuação consultoria em teste/qualidade de software, outsourcing (terceirização dos serviços através da alocação de profissionais) e treinamentos.
• Localização: A Qualister está localizada em Biguaçu na Grande Florianópolis/SC e está instalada no CITEB – Centro de Inovação Tecnologia de Biguaçu no campus da universidade UNIVALI.
www.qualister.com.br
O que iremos aprender?
• O que é Agile Testing
• Como escrever/expressar testes num ambiente ágil
• Automação!!!– Unitário – TDD – Test Driven Development
– Serviços – BDD – Behavior Driven Development
– Aceitação – Sem técnica específica (mas olhando ATDD)
• Testes Manuais no ambiente ágil
www.qualister.com.br
Como iremos aprender
Sistema fictício de pré-cadastro eleitoral
www.qualister.com.br
Onde vai estar o código-fonte dos exemplos?
https://github.com/eliasnogueira/2-encontro-gts-ce
www.qualister.com.br
Estrutura de Testes Atualmente
Analista Desenvolvedor
Testador
Envia documento
Tira dúvidas
Tira dúvidas
Envia documento
Repo
rta
Bug
Corr
ige
Bug
Estrutura Time Tradicional Comunicação Time Tradicional
www.qualister.com.br
Estrutura de Teste com Agile Testing
Analista Desenvolvedor
Testador
Estrutura Time Ágil Comunicação no Ágil: Interação
www.qualister.com.br
O que é Agile Testing?
Definimos Agile Testing neste caminho: um profissional que encara
as mudanças, colabora bem com pessoas técnicas e de negócio e
entende o conceito de utilizar testes para documentar os requisitos e
guiar o desenvolvimento.
www.qualister.com.br
Simulação 1: O que o cliente quer...
Necessito de um sistema web de pré-cadastro eleitoral para pessoas que
ainda não tem título de eleitor, informando se ela pode ou não tirar o
seu título
www.qualister.com.br
Refinamento... (pergunte o óbvio)
• Campos: Nome e Ano de Nascimento• Regra:
– Menor de 16: não pode– 16 a 18: facultativo– 70 ou mais: facultativo– diferente disso: obrigatório
• Não tem Restrição, a não ser a regra acima• Se a pessoa já tem titulo não pode deixar fazer o pre-cadastro. Tem que
adicionar o CPF• Vai poder pre-cadastrar com 16 anos desde que ele complete 16 no de
nascimento ano informado• Fluxo:
– Tela com inserção de dados– Tela de confirmação– Tela de numero de recibo
www.qualister.com.br
User Story
Funcionalidade: <descrição da funcionalidade>
Como um <papel/persona>Eu quero <efetuar alguma ação>De modo <que eu alcance uma meta>
• Quase um requisito• Dá um entendimento inicial da funcionalidade• Todos terão a mesma visão
www.qualister.com.br
Escrevendo a User Story
Funcionalidade: Sistema de pré-cadastro eleitoral
Como um possível eleitorEu quero efetuar meu pré-cadastroDe modo que eu possa obter meu titulo eleitoral
www.qualister.com.br
Conseguimos testar?
Conseguimos testar somente
com isso?
www.qualister.com.br
• Expressa o funcionamento da aplicação (quase/é uma regra)• Escrita de uma forma que todos entendem• Guia o desenvolvimento
Critérios de Aceitação (nosso caso de teste)
Cenário: <descrição do teste>
Dado <uma pré-condição>Quando <eu efetuar alguma ação>Então <eu tenho um resultado esperado>
www.qualister.com.br
Escrevendo o(s) Critério(s) de Aceitação
Cenário: Possível eleitor não pode efetuar o pré-cadastro
Dado que eu estou na tela de pré-cadastroQuando eu informo o nome “Ator mirim da malhação” E quando eu informo o ano de nascimento “2000”Então a pagina de pré-cadastro apresenta a mensagem “Você não pode votar!”
www.qualister.com.br
Pirâmide de Automação de Teste
www.qualister.com.br
TDD – Test Driven Development
www.qualister.com.br
Ajudando o desenvolvedor a escrever mais testes
Idade Retorno
15 Não pode
16 Facultativo
17 Facultativo
18 Obrigatório
19 Obrigatório
30 Obrigatório
50 Obrigatório
69 Obrigatório
70 Facultativo
71 Facultativo
Desenvolvedor apenas irá criar os testes (isso não é uma regra) para o que eleele tem de critérios de aceite. Nós como testadores iremos “parear” para levantarpossíveis cenários de teste, como no exemplo abaixo utilizando uma tabela dedecisão com valores limites da idade para mais testes.
Isso asseguro que não existam erros nas comparações (<= => <> || &&)
www.qualister.com.br
BDD – Behavior Driven Development
BDD pode ser visto como uma técnica de desenvolvimento ágil que encoraja colaboração entre os desenvolvedores, analistas, QA e o pessoal não técnico (stackeholders) para o sucesso de um
projeto
www.qualister.com.br
ATDD – Acceptance Test Driven Development
www.qualister.com.br
Treinamentos da Qualister disponíveis referente a Agile Testing
Unit Testing e TDD com Javahttp://www.qualister.com.br/cursos/unit-testing-e-tdd-com-java
Automação de Testes com Cucumberhttp://www.qualister.com.br/cursos/automacao-de-testes-com-cucumber
Automação de Testes Funcionais com Seleniumhttp://www.qualister.com.br/cursos/automacao-de-testes-funcionais-com-selenium
Teste para Equipes Ágeishttp://www.qualister.com.br/cursos/testes-para-equipes-ageis
Testes ágeis com ATDD: Acceptance Test Driven Developmenthttp://www.qualister.com.br/cursos/testes-ageis-com-atdd-acceptance-test-driven-development
Testes Exploratórioshttp://www.qualister.com.br/cursos/testes-exploratorios