Slide 1

Slide 1 text

A importância dos testes automatizados no dia a dia_ Rafael Ponte @rponte Tuesday, April 9, 2013

Slide 2

Slide 2 text

@rponte Tuesday, April 9, 2013

Slide 3

Slide 3 text

Tuesday, April 9, 2013

Slide 4

Slide 4 text

Como os clientes chegam até nós... Tuesday, April 9, 2013

Slide 5

Slide 5 text

Solucionar bugs críticos e “apagar incêndios” Tuesday, April 9, 2013

Slide 6

Slide 6 text

Solucionar bugs críticos e “apagar incêndios” Migrar ou Reescrever sistemas Tuesday, April 9, 2013

Slide 7

Slide 7 text

Solucionar bugs críticos e “apagar incêndios” Migrar ou Reescrever sistemas Treinar a equipe Tuesday, April 9, 2013

Slide 8

Slide 8 text

Solucionar bugs críticos e “apagar incêndios” Migrar ou Reescrever sistemas Treinar a equipe Tuesday, April 9, 2013

Slide 9

Slide 9 text

Migrar ou reescrever sistemas de: Tuesday, April 9, 2013

Slide 10

Slide 10 text

Migrar ou reescrever sistemas de: * Desktop para Web Tuesday, April 9, 2013

Slide 11

Slide 11 text

Migrar ou reescrever sistemas de: * Desktop para Web * PHP para Java Tuesday, April 9, 2013

Slide 12

Slide 12 text

Migrar ou reescrever sistemas de: * Desktop para Web * PHP para Java * Java para Ruby on Rails Tuesday, April 9, 2013

Slide 13

Slide 13 text

Migrar ou reescrever sistemas de: * Desktop para Web * PHP para Java * Java para Ruby on Rails * Java para Java Tuesday, April 9, 2013

Slide 14

Slide 14 text

após alguns minutos de conversa... Tuesday, April 9, 2013

Slide 15

Slide 15 text

com o gerente ou a equipe, é comum escutar... após alguns minutos de conversa... Tuesday, April 9, 2013

Slide 16

Slide 16 text

“Temos uma equipe de 8 programadores. E +3 vagas em aberto.” - Gerente Tuesday, April 9, 2013

Slide 17

Slide 17 text

“Criamos nosso próprio framework para agilizar o trabalho.” - Arquiteto Tuesday, April 9, 2013

Slide 18

Slide 18 text

“Eu li que JSF2 é mais simples do que GWT.” Programador Tuesday, April 9, 2013

Slide 19

Slide 19 text

“Fiz uma PoC com Ruby On Rails. É mais produtivo do que Java!” - Arquiteto Tuesday, April 9, 2013

Slide 20

Slide 20 text

“Com o “Caker” podemos gerar cadastros em minutos.” - Gerente Tuesday, April 9, 2013

Slide 21

Slide 21 text

Eles querem mais PRODUTIVIDADE?! Tuesday, April 9, 2013

Slide 22

Slide 22 text

Eles querem mais PRODUTIVIDADE?! não Tuesday, April 9, 2013

Slide 23

Slide 23 text

Eles procuram VELOCIDADE no desenvolvimento de novas funcionalidades Tuesday, April 9, 2013

Slide 24

Slide 24 text

Produtividade = Velocidade Tuesday, April 9, 2013

Slide 25

Slide 25 text

Produtividade = Velocidade não Tuesday, April 9, 2013

Slide 26

Slide 26 text

Tuesday, April 9, 2013

Slide 27

Slide 27 text

Tuesday, April 9, 2013

Slide 28

Slide 28 text

Tuesday, April 9, 2013

Slide 29

Slide 29 text

Tuesday, April 9, 2013

Slide 30

Slide 30 text

Eles estão focando no local errado... Tuesday, April 9, 2013

Slide 31

Slide 31 text

Eles estão focando no local errado... * Java para Ruby on Rails Tuesday, April 9, 2013

Slide 32

Slide 32 text

Mudar a forma como o programador trabalha! Tuesday, April 9, 2013

Slide 33

Slide 33 text

Programadores Resistência a mudança? Tuesday, April 9, 2013

Slide 34

Slide 34 text

Zona de Conforto Tuesday, April 9, 2013

Slide 35

Slide 35 text

Programador Cowboy Tuesday, April 9, 2013

Slide 36

Slide 36 text

Code and Fix Abandona sua disciplina na hora do aperto O programador que os gerentes adoram Tuesday, April 9, 2013

Slide 37

Slide 37 text

Programador Profissional Tuesday, April 9, 2013

Slide 38

Slide 38 text

Disciplinado Mantém a tranquilidade e disciplina Se mantém em evolução Tuesday, April 9, 2013

Slide 39

Slide 39 text

Boas Práticas Tuesday, April 9, 2013

Slide 40

Slide 40 text

Escrita de Testes Automatizados Tuesday, April 9, 2013

Slide 41

Slide 41 text

Testes Manuais versus Testes Automatizados Tuesday, April 9, 2013

Slide 42

Slide 42 text

Não é mais demorado? Tuesday, April 9, 2013

Slide 43

Slide 43 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 44

Slide 44 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 45

Slide 45 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 46

Slide 46 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 47

Slide 47 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 48

Slide 48 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 49

Slide 49 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 50

Slide 50 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 51

Slide 51 text

1 2 3 4 5 6 7 8 0 17.5 35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013

Slide 52

Slide 52 text

Se a coisa já é ruim com um programador cowboy... Tuesday, April 9, 2013

Slide 53

Slide 53 text

imagina uma equipe de cowboys Tuesday, April 9, 2013

Slide 54

Slide 54 text

Cowboys Profissionais 1s 2s 3s 4s 5s 6s F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 55

Slide 55 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 6s F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 56

Slide 56 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 6s F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 57

Slide 57 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 6s F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 58

Slide 58 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 6s F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 59

Slide 59 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 60

Slide 60 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 61

Slide 61 text

Não é dificil perceber alguns padrões... Tuesday, April 9, 2013

Slide 62

Slide 62 text

REINCIDÊNCIA DE BUGS 1 Tuesday, April 9, 2013

Slide 63

Slide 63 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 64

Slide 64 text

FUNCIONALIDADES “BUGAM” DO NADA 2 Tuesday, April 9, 2013

Slide 65

Slide 65 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 66

Slide 66 text

DIMINUIÇÃO DE NOVAS FUNCIONALIDADES 3 Tuesday, April 9, 2013

Slide 67

Slide 67 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 68

Slide 68 text

Por que isso acontece? Tuesday, April 9, 2013

Slide 69

Slide 69 text

reincidência de bugs Não escrevem testes! 1 Tuesday, April 9, 2013

Slide 70

Slide 70 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 71

Slide 71 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 72

Slide 72 text

funcionalidades “bugam” do nada Não fazem teste de regressão 2 Tuesday, April 9, 2013

Slide 73

Slide 73 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 74

Slide 74 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 75

Slide 75 text

diminuição de novas funcionalidades Sem disciplina com testes 3 Tuesday, April 9, 2013

Slide 76

Slide 76 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 77

Slide 77 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013

Slide 78

Slide 78 text

Cowboys Profissionais 1s F1 2s 3s 4s 5s F2 F3 F4 F5 F2 F1 F6 F2 F7 F4 F8 F4 F1 F5 F6 F9 F7 F4 F10 F7 F6 F8 F6 F11 F7 F12 F13 F10 F9 F8 F11 F14 F10 F7 F12 F13 F12 F14 F15 6s F1 F10 F4 F12 F17 F16 F18 F19 F9 F = Nova Funcionalidade F = Funcionalidade com Bug Medo Insegurança Evolução Lenta Cliente Frustrado Sem credibilidade Segurança Feedback Produtividade Cliente Satisfeito Credibilidade Tuesday, April 9, 2013

Slide 79

Slide 79 text

Não é dificil escrever testes automatizados Tuesday, April 9, 2013

Slide 80

Slide 80 text

Mas requer um tempo de maturidade Tuesday, April 9, 2013

Slide 81

Slide 81 text

CONCLUSÃO Tuesday, April 9, 2013

Slide 82

Slide 82 text

Você só percebe os benefícios dos testes entre 6 meses e 1 ano Tuesday, April 9, 2013

Slide 83

Slide 83 text

não existe uma receita de bolo para desenvolver software Tuesday, April 9, 2013

Slide 84

Slide 84 text

mas sim um conjunto de princípios e práticas que podem te ajudar a desenvolver melhor Tuesday, April 9, 2013

Slide 85

Slide 85 text

testes automatizados é apenas a ponta do iceberg Tuesday, April 9, 2013

Slide 86

Slide 86 text

permita que sua equipe trabalhe melhor Tuesday, April 9, 2013

Slide 87

Slide 87 text

permita que sua empresa entregue software melhor Tuesday, April 9, 2013

Slide 88

Slide 88 text

permita-se ser um profissional melhor Tuesday, April 9, 2013

Slide 89

Slide 89 text

use testes automatizados Tuesday, April 9, 2013

Slide 90

Slide 90 text

testes automatizados eu aprovo! Tuesday, April 9, 2013

Slide 91

Slide 91 text

Rafael Ponte [email protected] Tuesday, April 9, 2013