Palestra ministrada na Faculdade Estácio de Alagoas, organizada pela própria instituição em conjunto com a APL Maceió e o SEBRAE Alagoas, ocorrida em Maceió, em 12 de novembro de 2013.
[UNIP2015] Testando a Performance de Aplicações Web com JMeter
TDD e UnitTest em Java
1. (48) 3285 5615 / 9645 5506
contato@qualister.com.br
• Terceirização de profissionais
• Consultoria de teste
• Avaliação de usabilidade
• Automação de testes
• Testes de performance
• Treinamentos
www.qualister.com.br
TDD e UnitTest
em Java
1
4. Parcerias internacionais
Soluções para automação, profilling e gestão de testes
Soluções para testes de performance
Soluções de apoio a avaliação de usabilidade
4
www.qualister.com.br
6. O que é Unit Test?
“Unit Test (Teste unitário) é um processo
de desenvolvimento de software no qual
a menor parte testável de uma
aplicação, denominada Unidade, é
individualmente e independentemente
verificada se faz o que realmente
deveria fazer”
Software Testing Stuff
http://www.softwaretestingstuff.com/2010/09/unit-testing-best-practices-techniques.html
6
www.qualister.com.br
7. O que é Unit Test?
Código:
UnitTest:
7
www.qualister.com.br
8. O que é Unit Test?
“A criação de testes unitários evita
diversos problemas futuros, por
garantir a qualidade e eficiência do
código.”
Software Testing Stuff
http://www.softwaretestingstuff.com/2010/09/unit-testing-best-practices-techniques.html
8
www.qualister.com.br
9. Porque testar?
Para adquirir confiança no código
que está sendo desenvolvido. E
garantir que mudanças futuras não
farão com que o que funcionava,
parou de funcionar.
9
www.qualister.com.br
10. Porque testar?
Será que eu fiz
merda!?
“Ficar com a mente tranqüila depois de alterar uma grande
quantidade de código, não tem preço!”
10
www.qualister.com.br
12. Quando são construídos?
Antes, durante ou após a
codificação. Isso depende da
metodologia utilizada.
12
www.qualister.com.br
13. Características de um bom UnitTest
Automático;
Completo;
Repetitivo;
Independente;
Objetivo;
Profissional;
Veloz;
Legível.
www.qualister.com.br
13
Livro: The Pragmatic Unit Testing
14. TDD (Test-Driven Development)
TDD é uma técnica utilizada geralmente
em projetos que seguem metodologias
ágeis, e prega que, antes de iniciar a
escrita de código, devemos construir
testes que provem que o código que
será escrito funciona como esperado.
14
www.qualister.com.br
15. O ciclo Red/Green/Refactor
A construção dos scripts seguem um
fluxo muito conhecido, chamado
Red/Green/Refactor, palavras que
fazem referência a
Falha/Sucesso/Manutenção do código
15
www.qualister.com.br
17. Quando os testes são executados?
Os testes podem ser executados
manual ou automaticamente, antes ou
depois de codificar. Uma prática comum
é a de sincronizar a execução dos
testes com a ferramenta de integração
contínua.
17
www.qualister.com.br
18. Benefícios
Aumenta a confiança no código
desenvolvido;
Facilita a refatoração dos códigos;
Reduz o custo das falhas encontradas;
Código pode ser testado previamente;
Permite a criação de um código mais
limpo;
Reduz o tempo com debug de código.
18
www.qualister.com.br
19. Desafios na adoção de Unit Test e TDD
Tempo;
Investimento;
Motivação;
Comprometimento;
Modo de programar;
Reescrita de parte
do código legado.
19
www.qualister.com.br