Top Banner
www.qualister.com.br (48) 3285 5615 / 9645 5506 [email protected] TDD e UnitTest em Java Terceirização de profissionais Consultoria de teste Avaliação de usabilidade Automação de testes Testes de performance Treinamentos 1
21

TDD e UnitTest em Java

May 25, 2015

Download

Technology

Júlio de Lima

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.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: TDD e UnitTest em Java

www.qualister.com.br

(48) 3285 5615 / 9645 5506

[email protected]

TDD e UnitTestem Java

• Terceirização de profissionais

• Consultoria de teste

• Avaliação de usabilidade

• Automação de testes

• Testes de performance

• Treinamentos

1

Page 2: TDD e UnitTest em Java

www.qualister.com.br

Palestrante

Júlio de Lima

E-mail:

[email protected]

Linkedin:

br.linkedin.com/in/juliodelimas/

• Especialista em automação de testes de software

• Experiência em projetos:

– Softwares para o setor Público

– Mercado de Ações

– Telefonia e SAP

– CloudComputing

• Certificações internacionais (CTFL e CTAL-TM)

• Certificação nacional (CBTS)2

Page 3: TDD e UnitTest em Java

www.qualister.com.br

Twitter

twitter.com/juliodelimas

3

Page 4: TDD e UnitTest em Java

www.qualister.com.br

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

Page 5: TDD e UnitTest em Java

www.qualister.com.br

Precisamos refatorar o código...

5

Vai dar merda!

Page 6: TDD e UnitTest em Java

www.qualister.com.br

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

Page 7: TDD e UnitTest em Java

www.qualister.com.br

O que é Unit Test?

7

Código:

UnitTest:

Page 8: TDD e UnitTest em Java

www.qualister.com.br

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

Page 9: TDD e UnitTest em Java

www.qualister.com.br

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

Page 10: TDD e UnitTest em Java

www.qualister.com.br

Porque testar?

“Ficar com a mente tranqüila depois de alterar uma grande

quantidade de código, não tem preço!”10

Será que eu fiz merda!?

Page 11: TDD e UnitTest em Java

www.qualister.com.br

Frameworks

Frameworks fornecem ao

desenvolvedor bibliotecas que

tornam mais simples e mais

produtivo o trabalho de construção

dos testes.

11

Page 12: TDD e UnitTest em Java

www.qualister.com.br

Quando são construídos?

Antes, durante ou após a

codificação. Isso depende da

metodologia utilizada.

12

Page 13: TDD e UnitTest em Java

www.qualister.com.br

Características de um bom UnitTest

Livro: The Pragmatic Unit Testing13

Automático;

Completo;

Repetitivo;

Independente;

Objetivo;

Profissional;

Veloz;

Legível.

Page 14: TDD e UnitTest em Java

www.qualister.com.br

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

Page 15: TDD e UnitTest em Java

www.qualister.com.br

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

Page 16: TDD e UnitTest em Java

www.qualister.com.br

Exemplo com JUnit

Exemplo com JUnit

16

Page 17: TDD e UnitTest em Java

www.qualister.com.br

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.

Quando os testes são executados?

17

Page 18: TDD e UnitTest em Java

www.qualister.com.br

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

Page 19: TDD e UnitTest em Java

www.qualister.com.br

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

Page 20: TDD e UnitTest em Java

www.qualister.com.br

Retorno do Investimento

20

Reto

rno

no

In

ve

sti

me

nto

Tempo

Page 21: TDD e UnitTest em Java

www.qualister.com.br

Dúvidas?

[email protected]

slideshare.net/juliodelimas

Telefone: (48) 3285 5615

www.qualister.com.br

21