This is a little presentation to make absolutely clear why test automation and test driven development are key to any software development process that strives for high quality and high productivity. Brazilian portuguese.
Essa é a tradução para português brasileiro da apresentação do Henrik Kniberg, originalmente entitulada "10 ways to screw up with Scrum and XP" que foi apresentada no Agile 2008 em Toronto.
Essa é a tradução para português-brasileiro da apresentação do Henrik Kniberg entitulada "Technical Debt - how not to ignore it" apresentada no Agile 2008 em Toronto.
Agile Software Development with Intrinsic QualityDemetrius Nunes
This is a little presentation to make absolutely clear why test automation and test driven development are key to any software development process that strives for high quality and high productivity.
Você e sua organização estão antenadas com a maneira que o mundo funciona na era open-source na indústria de desenvolvimento de software?
Os tempos mudaram! Como se fazer presente nesses tempos de Web 2.0.
Essa é a tradução para português brasileiro da apresentação do Henrik Kniberg, originalmente entitulada "10 ways to screw up with Scrum and XP" que foi apresentada no Agile 2008 em Toronto.
Essa é a tradução para português-brasileiro da apresentação do Henrik Kniberg entitulada "Technical Debt - how not to ignore it" apresentada no Agile 2008 em Toronto.
Agile Software Development with Intrinsic QualityDemetrius Nunes
This is a little presentation to make absolutely clear why test automation and test driven development are key to any software development process that strives for high quality and high productivity.
Você e sua organização estão antenadas com a maneira que o mundo funciona na era open-source na indústria de desenvolvimento de software?
Os tempos mudaram! Como se fazer presente nesses tempos de Web 2.0.
A dois passos do paraíso - Professor Geraldo Furtado de Araújo NetoWagson Filho
Dicas para a prova de sentença
Concurso de Juiz do Trabalho
Texto exclusivo do site www.magistradotrabalhista.com.br
Professor Geraldo Furtado de Araújo Neto
Sistema de responsabilidade civil vigente no BrasilWagson Filho
Pretende-se com este artigo municiar profissionais do mundo jurídico para o
enfrentamento de problemáticas advindas do sistema de responsabilidade civil vigente no
Brasil.
Introdução ao Teste de Software - Uma abordagem práticaFabrício Campos
Apresentação do curso "Introdução ao Teste de Software - Uma abordagem prática", ministrado por Fabrício Ferrari de Campos no primeiro Ensina aí! realizado na Voice Technology.
Apresentação sobre Automação de Teste de Software no 3° BRATESTE - Seminário Brasileiro de Teste de Software em 18/06/2010
Esta apresentação contém material teórico sobre Automação de Teste, Geração de Frameworks de Automação de Teste, como definir a arquitetura da automação e um hands on com Selenium
A dois passos do paraíso - Professor Geraldo Furtado de Araújo NetoWagson Filho
Dicas para a prova de sentença
Concurso de Juiz do Trabalho
Texto exclusivo do site www.magistradotrabalhista.com.br
Professor Geraldo Furtado de Araújo Neto
Sistema de responsabilidade civil vigente no BrasilWagson Filho
Pretende-se com este artigo municiar profissionais do mundo jurídico para o
enfrentamento de problemáticas advindas do sistema de responsabilidade civil vigente no
Brasil.
Introdução ao Teste de Software - Uma abordagem práticaFabrício Campos
Apresentação do curso "Introdução ao Teste de Software - Uma abordagem prática", ministrado por Fabrício Ferrari de Campos no primeiro Ensina aí! realizado na Voice Technology.
Apresentação sobre Automação de Teste de Software no 3° BRATESTE - Seminário Brasileiro de Teste de Software em 18/06/2010
Esta apresentação contém material teórico sobre Automação de Teste, Geração de Frameworks de Automação de Teste, como definir a arquitetura da automação e um hands on com Selenium
Estratégias e Técnicas de Testes - Parte1Lorena Caldas
Slides da da palestra sobre Estratégias e Técnicas de Testes, apresentada por mim, na data de 19/11/2013 aos formandos do curso de Análise de Sistemas da instiutição IBES
Melhorando a qualidade do software com testes de ponta a-pontaGuilherme Cardoso
No processo de desenvolvimento de software precisamos garantir a qualidade do software de ponta-a-ponta. Nessa palestra veremos alguns princípios utilizados utilizados no desenvolvimento de software e como aliar isso a gestão garantindo uma melhor qualidade.
Qualidade de Software - Desenvolvimento dirigido por testes
Desenvolvimento Ágil de Software com Qualidade Intrínseca
1. Processo de
Desenvolvimento Ágil
com Qualidade Intrínseca
Teoria, Práticas e Ferramentas
2. Processo Típico
Desenvolvimento-Teste Segregado
1 mês
Desenvolvimento Testes Desenvolvimento Testes
Bug Bug Bug Bug
Introduzido Detectado Corrigido Verificado
Ágil?
3. Processo “Pull”
Visão
Analista de Clientes e
Suporte Valor
Usuários
Código Funcionalidades
Desenvolvedor Analista
de Negócio
Cenários e
Critérios de Histórias
Aceitação
Analista de
Qualidade
4. Como?
• Competências
– Linguagem de Histórias e Cenários
– Automação de Cenários
– Desenvolvimento de Software
• Práticas
– AATDD – Automated Acceptance Test Driven-Development
– BDD & TDD – Behaviour & Test Driven-Development
• Ferramentas
– RFT
– Selenium
– Watir
– Jemmy
– Cucumber
– Twist
– Junit
– Java
– Ruby
– ...
5. Testes, testes, testes...
Tradicional Intrínseca
Escrevendo Escrevendo
Automatizando Automatizando
Executando Executando
Analisando Analisando
Onde está o trabalho do
analista de qualidade?
6. Meta: eliminar o trabalho de
execução de testes
Teste manual é um imposto caro pago
a cada ciclo de desenvolvimento
7. Qualidade Tradicional x Ágil
Tradicional Intrínseca
• Manual • Automatizada
• Desmotivante • Divertida
• Lenta • Rápida
• Falha • Sistemática, abrangente
• Baixa competência • Alta competência
• Baixo valor agregado • Alto valor agregado
• Reativa • Proativa
• Defensiva • Direcionadora
• Segregada • Integrada
8. Próximo Nível de Qualidade
Qualidade
Intrínseca
(Automatizada)
Desenvolvedor
Automação de Testes
A. de Testes
Linguagem de Cenários
A. de Negócios
Qualidade por
Inspeção
(Manual)
9. 5 razões para amar testes ágeis
1. Sempre existe tempo para testes, pois os
testes são a primeira coisa que é feita
2. Chega de testes manuais
3. Os resultados dos testes aparecem várias
vezes por dia
4. O clima é de “time jogando junto”
5. O testador pode consertar bugs
10. Linguagem de
Histórias e Cenários
http://dannorth.net/whats-in-a-story
13. Linguagem de Histórias
• Para que se possa decidir sobre ações numa
emergência
• Eu, como gerente de recursos materiais,
• Quero consultar que materiais de um
determinado tipo estão disponíveis para
potencial uso na resposta a emergência
15. Linguagem de Cenários
• Dado que ... CONTEXTO / PRÉ-CONDIÇÕES
– E ...
• Quando ... EVENTO / ENTRADA
– E ...
• Então ... EXPECTATIVA / SAÍDA
– E ...
16. Linguagem de Cenários
• Dado que estou acompanhando uma emergência em
andamento na fábrica
• Quando eu entrar no módulo de Consultas
– E clicar em “Recursos Materiais” na árvore de classes
– E buscar por tipo “Barreiras”
• Então eu devo ver uma lista de objetos do tipo “Barreiras”
– E eu devo ver a quantidade disponível de cada recurso para
minha unidade
– E eu devo ver a distância de cada recurso para minha unidade
– E eu devo ver o status de expiração para cada recurso
– E eu devo ver um link “Solicitar” para cada recurso
17. Automação de Cenários
• Dado que estou acompanhando uma emergência em Código
andamento na fábrica executável
• Quando eu entrar no módulo de Consultas Código
– E clicar em “Recursos Materiais” na árvore de classes executável
– E buscar por tipo “Barreiras”
• Então eu devo ver uma lista de objetos do tipo “Barreiras”
– E eu devo ver a quantidade disponível de cada recurso para minha
unidade Código
– E eu devo ver a distância de cada recurso para minha unidade executável
– E eu devo ver o status de expiração para cada recurso
– E eu devo ver um link “Solicitar” para cada recurso
19. Automação de Cenários
com Cucumber
When /clicar em “(.*)” na árvore de classes/ do |classe|
arvore = browser.current_page.arvore_de_classes
arvore.click(classe)
end
Then /eu devo ver uma lista de objetos do tipo “(.*)”/ do |tipo|
pagina = browser.current_page
assert_true(pagina.contains_text?(“Resultado”))
assert_true(pagina.contains_text?(“ encontrados”))
assert_true(pagina.contains_text?(tipo))
end
20. Automação de Cenários
com Cucumber-Java
public class ArvoreSteps {
@When(“clicar em “(.*)” na árvore de classes”)
public void clicarEmClasse(String classe) {
arvore = new ArvoreClasses(browser().getCurrentPage())
arvore.click(classe)
}
}
21. THE END
Moral da história:
“Teste de regressão manual é uma
prática totalmente inviável e inaceitável.”
”Use os testes de aceitação automatizados
para direcionar o desenvolvimento.”