Test Driven Development (TDD) para seres humanos

Preview:

Citation preview

Romulo Santos

TDD PARA SERES HUMANOSUma conversa simples sobre os benefícios do desenvolvimento orientado a testes, que está vivo, evoluindo e passa muito bem.

Quem sou eu?

2

Troublemaker lv. 21

Romulo Santos

POR QUE TESTAMOS?Essa é fácil hein!

3

PRA SABER SE NÃO ESTAMOS ERRADOSEu disse que era fácil! Tome ai um bat-joinha.

4

AUTOMATIZADOS OU MANUAIS?Que tipo de teste é melhor?

5

AUTOMATIZADOSTestes automatizados são mais legais que dinossauros robôs!

6

ANTES OU DEPOIS?Qual é a melhor hora pra testar?

7

NENHUM DOS DOIS!Yeah Yeah!

8

CICLO MALDITO DA FRUSTRAÇÃO GARANTIDA

9

Erros

Stress

Testes

CICLO LINDO DA RECOMPENSA IMEDIATA

10

Erros

Stress

Testes

POR QUE NÃO TESTAR DEPOIS?Porque não?

11

DISCIPLINA 12

TDD NÃO É SOBRE TESTES (VERIFICAÇÃO)Ah não!

13

TDD É SOBRE DESIGNDesign não é uma fase, mas um processo contínuo!

14

TDD NÃO É REVOLUÇÃO, TDD É EVOLUÇÃO

O objetivo é código limpo e que funciona

Tudo o que você sabia sobre um bom design ainda vale.

15

DESIGN UP-FRONT (TRADICIONAL)

1616

Design

16

Implementação Teste

DESIGN UP-FRONT (TESTE PRIMEIRO)

1717

Design

17

ImplementaçãoTeste

TEST DRIVEN DEVELOPMENT / TEST DRIVEN DESIGN

1818

Design

18

Implementação

TesteTeste

COMO FAZER

•1 Adicione um teste

•2 Rode todos os testes

•3 Faça uma pequena mudança

•4 Rode todos os testes (todos devem passar)

•5 Refatore

19

VERMELHO VERDE REFATORE

20

TÉCNICAS PARA UM BOM TDDTDD Ninja!

21

LISTA DE TESTESUma coisa de cada vez

22

ISOLAMENTOCada coisa separada

23

DE CIMA PRA BAIXO OU DE BAIXO PRA CIMADireções opostas rumo ao mesmo destino

24

TESTES DEVEM ENSINARTer um significado

25

COMO FAZER O TESTE

•Onde começar? Teste mais simples

•Como Começar? Assertion mais óbvia

•E depois? Testes e assertions que respondem a perguntas Que te ajudam a entender outros testesQue você sabe que dará conta

26

O teste é uma ferramenta para um design melhor

TESTE É A MELHOR DOCUMENTAÇÃOCódigo limpo e que funciona!

27

OUTRAS VANTAGENSComo se precisasse!

28

VOCE SABE QUANDO TERMINOUSó falta testar…

29

VOCÊ APRENDE O MÁXIMO COM O CÓDIGOAo invés de ficar sempre com a primeira idéia que aparece.

30

AGREGA QUALIDADEUsuários mais felizes

31

INSPIRA CONFIANÇA

32

O FIM DO MEDO33

Perguntas e sugestões

rsantos@thoughtworks.com

OBRIGADO!

Recommended