testes Ágeis
DESCRIPTION
Introdução à testes sobre o prisma do desenvolvimento ágil de softwareTRANSCRIPT
Agile TestingAndré Faria Gomes
Bluesoft
quarta-feira, 16 de setembro de 2009
Referência
quarta-feira, 16 de setembro de 2009
Todo Mundo Junto
• “Agile development encourages us to solve our problems as a team. Business people, programmers, testers, analysts—everyone involved in software development—decides together how best to improve their product. Best of all, as testers, we're working together with a team of people who all feel responsible for delivering the best possible quality, and who are all focused on testing. We love doing this work, and you will too.”
quarta-feira, 16 de setembro de 2009
Mas quem é testador?
quarta-feira, 16 de setembro de 2009
alguém que não teme mudanças
quarta-feira, 16 de setembro de 2009
alguém que colabora com gente técnica ou de negócios
quarta-feira, 16 de setembro de 2009
alguém que entende o conceito de usar testes para documentar requisitos e dirigir o desenvolvimento
quarta-feira, 16 de setembro de 2009
alguém que tenha interesse em entender o negócio do cliente para entender melhor os requisitos
quarta-feira, 16 de setembro de 2009
alguém que tende a ter boas habilidades técnicas
quarta-feira, 16 de setembro de 2009
"Sem ação o conhecimento não é nada"
quarta-feira, 16 de setembro de 2009
O que faz uma equipe ser ágil?
quarta-feira, 16 de setembro de 2009
Foco em contínuo em fazer o melhor trabalho possível para entregar o melhor produto possível
quarta-feira, 16 de setembro de 2009
Disciplinaquarta-feira, 16 de setembro de 2009
Aprendizadoquarta-feira, 16 de setembro de 2009
Tempoquarta-feira, 16 de setembro de 2009
Experimentaçãoquarta-feira, 16 de setembro de 2009
Trabalho em Equipequarta-feira, 16 de setembro de 2009
10 Princípios
quarta-feira, 16 de setembro de 2009
Mudanças Culturaisquarta-feira, 16 de setembro de 2009
Filosofia de Qualidadequarta-feira, 16 de setembro de 2009
Filosofia de Qualidade
Como determinar se o software está bom o suficiente?
Baixa qualidade é tolerável?
quarta-feira, 16 de setembro de 2009
Métricasquarta-feira, 16 de setembro de 2009
Defect Tracking Toolquarta-feira, 16 de setembro de 2009
Estratégia de Testesquarta-feira, 16 de setembro de 2009
Documente a Estratégiaquarta-feira, 16 de setembro de 2009
Smoke TestsIt refers to the first test made after repairs or first assembly to provide some assurance that the system under test will not catastrophically fail. After a smoke test proves that "the pipes will not leak, the keys seal properly, the circuit will not burn, or the software will not crash outright," the assembly is ready for more stressful testing.
quarta-feira, 16 de setembro de 2009
Smoke Tests in Software
In computer programming and software testing, smoke testing is a preliminary to further testing, which should reveal simple failures severe enough to reject a prospective software release. In this case, the smoke is metaphorical.
quarta-feira, 16 de setembro de 2009
Os quadrantes
quarta-feira, 16 de setembro de 2009
Quando está pronto?quarta-feira, 16 de setembro de 2009
Gerência de Débito Técnico
quarta-feira, 16 de setembro de 2009
Context Drivenquarta-feira, 16 de setembro de 2009
7 Princípios da Escola Context-Driven
1. The value of any practice depends on its context.
2. There are good practices in context, but there are no best practices.
3. People, working together, are the most important part of any project's context.
4. Projects unfold over time in ways that are often not predictable.
5. The product is a solution. If the problem isn't solved, the product doesn't work.
6. Good software testing is a challenging intellectual process.
7. Only through judgment and skill, exercised cooperatively throughout the entire project, are we able to do the right things at the right times to effectively test our products.
quarta-feira, 16 de setembro de 2009
Technology Facing Tests
quarta-feira, 16 de setembro de 2009
Testes Unitáriosquarta-feira, 16 de setembro de 2009
Efeitos Colateraisquarta-feira, 16 de setembro de 2009
Mockquarta-feira, 16 de setembro de 2009
Designing for testabilityquarta-feira, 16 de setembro de 2009
Menos Responsabilidadesquarta-feira, 16 de setembro de 2009
TDDquarta-feira, 16 de setembro de 2009
Integração Contínuaquarta-feira, 16 de setembro de 2009
Business Facing Testsquarta-feira, 16 de setembro de 2009
Estórias de Usuárioquarta-feira, 16 de setembro de 2009
Peça ao Cliente que prepare exemplos
Adding Items to the Shopping cart
There are 5 items on a page. I want to select item 1 for $20.25 and put it in the shopping cart. I click to the next page, which has 5 more items. I select a second item on that page for $5.38 and put it in my shopping cart. When I say I'm done shopping, it will show both the item from the first page and the item from the second page in my shopping cart, with the total of $25.63
quarta-feira, 16 de setembro de 2009
Checklistsquarta-feira, 16 de setembro de 2009
Mind Mapsquarta-feira, 16 de setembro de 2009
Planílhasquarta-feira, 16 de setembro de 2009
Diagramas de Fluxoquarta-feira, 16 de setembro de 2009
BDD
assertEquals(42.50, pedido.getTotal())
pedido.getTotal().deveSer(42.50)
quarta-feira, 16 de setembro de 2009
scenario "Gold-level customer with $50 in shopping cart", {
given "a Gold-level customer"
when "their shopping cart totals $50 or more"
then " they should receive a 15% discount off the total price"
}
BDD
quarta-feira, 16 de setembro de 2009
scenario "Gold-level customer with $50 in shopping cart", { given "a Gold-level customer", {
customer = new GoldCustomer()
} when "their shopping cart totals $50 or more", { customer.shoppingCart << new Item("widget", 50.00)
}
then "they should receive a 15% discount off the total price" , { customer.orderPrice.shouldBe 42.50 }
}
BDD
quarta-feira, 16 de setembro de 2009
Fit / Fitnessequarta-feira, 16 de setembro de 2009
Fitquarta-feira, 16 de setembro de 2009
Record/Playback Toolsquarta-feira, 16 de setembro de 2009
Personasquarta-feira, 16 de setembro de 2009
Personas
• Nancy Newbie, a senior citizen who is new to Internet shopping and nervous about identity theft
• Hudson Hacker, who looks for ways to cheat the checkout page
• Enrico Executive, who does all his shopping online and ships gifts to all his clients worldwide
• Betty Bargain, who's looking for great deals
• Debbie Ditherer, who has a hard time deciding what items she really wants to order
quarta-feira, 16 de setembro de 2009
Navegaçãoquarta-feira, 16 de setembro de 2009
Relatóriosquarta-feira, 16 de setembro de 2009
Securityquarta-feira, 16 de setembro de 2009
SQL Injectionquarta-feira, 16 de setembro de 2009
Analise Estáticaquarta-feira, 16 de setembro de 2009
Compatibilidadequarta-feira, 16 de setembro de 2009
Iteroperabilidadequarta-feira, 16 de setembro de 2009
Escalabilidadequarta-feira, 16 de setembro de 2009
Performancequarta-feira, 16 de setembro de 2009
Teste de Carga (Load/Stress)
quarta-feira, 16 de setembro de 2009
Automaçãoquarta-feira, 16 de setembro de 2009
Testes Manuais Demoram +
quarta-feira, 16 de setembro de 2009
e são passíveis de erroquarta-feira, 16 de setembro de 2009
automação permite que as pessoas cuidem do que é mais importante
quarta-feira, 16 de setembro de 2009
testes automatizados são documentação viva (executável)
quarta-feira, 16 de setembro de 2009
A Pirâmidequarta-feira, 16 de setembro de 2009
Retrospectivas
• Começar
• Parar
• Continuar
quarta-feira, 16 de setembro de 2009
Imagens
• Getty Images
• Google Images
• Flickr
quarta-feira, 16 de setembro de 2009
Ob!gado!
quarta-feira, 16 de setembro de 2009