Testes unitários e Mocks

19
Testes Unitários e Mocks 1

Transcript of Testes unitários e Mocks

Page 1: Testes unitários e Mocks

Testes Unitários e Mocks

1

Page 2: Testes unitários e Mocks

2

Page 3: Testes unitários e Mocks

3

Agenda

Padrões de Projeto

Testes Automatizados

Testando Serviços

Criando Mocks

Como São Nossos Testes?

Page 4: Testes unitários e Mocks

4

Como São Nossos Testes

?

Page 5: Testes unitários e Mocks

5

Padrões de Projetos& Refatoração

O que é mais fácil testar, dar manutenção e garantir o funcionamento?

AntecipaParcelaDaoImpl AntecipaParcelaDaoImplRefatorado

Frederico Pereira Belisario
Comparar as classes, antes e depois de refatorar.
Frederico Pereira Belisario
AntecipaParcelaDaoImpl e AntecipaParcelaDaoImplRefatorado
Frederico Pereira Belisario
Fazer um metodo simples e refatorar na hora.
Page 6: Testes unitários e Mocks

6

Padrões de Projetos& Refatoração

O que é mais fácil testar, dar manutenção e garantir o funcionamento?\TST-Unitario-web\src\br\com\bradseg\siaw\antecipaparcela\dao\AntecipaParcelaDaoImpl.java

Frederico Pereira Belisario
Comparar as classes, antes e depois de refatorar.
Frederico Pereira Belisario
AntecipaParcelaDaoImpl e AntecipaParcelaDaoImplRefatorado
Frederico Pereira Belisario
Fazer um metodo simples e refatorar na hora.
Page 7: Testes unitários e Mocks

7

Padrões de Projetos& Refatoração

O que é mais fácil testar, dar manutenção e garantir o funcionamento?\TST-Unitario-web\src\br\com\bradseg\siaw\antecipaparcela\dao\AntecipaParcelaDaoImplRefatorado.java

Frederico Pereira Belisario
Comparar as classes, antes e depois de refatorar.
Frederico Pereira Belisario
AntecipaParcelaDaoImpl e AntecipaParcelaDaoImplRefatorado
Page 8: Testes unitários e Mocks

8

Padrões de Projetos

DAO

Page 9: Testes unitários e Mocks

9

Padrões de Projetos

Facade (Façade)

Page 10: Testes unitários e Mocks

10

Testes Automatizados

TDD

DemandaAtividades

TDD encoraja designs de código simples e inspira confiança!Beck, K. Test-Driven Development by Example

1. Escrever Testes!2. Execute os testes: Eles falharão!3. Escrever os Códigos.4. Execute os testes Automatizados5. Refatore6. Teste

“O teste é o primeiro cliente do seu código e o ditado diz que o cliente sempre tem a razão.”

Page 11: Testes unitários e Mocks

Testes unitários incentivam o refactoring. 

11

Testes Automatizados

Porque usar testes Unitários Automatizados??

DemandaAtividades

Testes de unidade servem como documentação.

Testes unitários permitem maior cobertura de teste.É muito mais fácil exercitar todos os caminhos possíveis por meio de testes

unitários do que em testes manuais.

Testes unitários previnem regressão.

“Como pode? Eu nem toquei no código dessa tela!” 

O problema é que, sem testes unitários, não temos a mínima garantia de que aquele código funciona… não temos como comparar se o refactoring que fizemos “quebrou” ou não aquela parte do código. 

Os testes exercitam o comportamento do sistema, verificando como ele deve funcionar sob determinadas situações. 

Page 12: Testes unitários e Mocks

12

Testes Automatizados

TDD

DemandaAtividades

TDD encoraja designs de código simples e inspira confiança!Beck, K. Test-Driven Development by Example

1. Escrever Testes!2. Execute os testes: Eles falharão!3. Escrever os Códigos.4. Execute os testes Automatizados5. Refatore6. Teste

• Testes unitários permitem maior cobertura de teste.

• Testes unitários previnem regressão.• Testes unitários incentivam

o refactoring. • Testes de unidade servem como

documentação.

Page 13: Testes unitários e Mocks

13

DemandaAtividades

Testes Automatizados

Antes de Usar

https://github.com/fbeli/TST-Unitario-web.git

https://github.com/fbeli/TST-Unitario.git

Código Fonte em:

Page 14: Testes unitários e Mocks

14

DemandaAtividades

Testes Automatizados

Testando Serviços

Page 15: Testes unitários e Mocks

15

DemandaAtividades

Testes Automatizados

Testando Serviços\TST-Unitario-web\test\br\com\workshop\ValidacaoTest.java

Page 16: Testes unitários e Mocks

16

DemandaAtividades

Testes Automatizados

Criando Mocks\TST-Unitario-web\test\br\com\workshop\TesteWorkshopService.java

Page 17: Testes unitários e Mocks

17

DemandaAtividades

Testes AutomatizadosCriando Mocks

\TST-Unitario-web\test\br\com\workshop\TesteWorkshopFacade.java

Page 18: Testes unitários e Mocks

18

DemandaAtividades

Testes Automatizados

Testes de Integração

Page 19: Testes unitários e Mocks

[email protected]+55 21 3622.8243www.provider-it.com.br

19