A Importância dos Testes Automatizados no Dia a Dia

A Importância dos Testes Automatizados no Dia a Dia

Desenvolver software é uma luta constante contra complexidade. Cada linha de código que um programador escreve pode ser mais um ponto de falha no software. Para diminuir os riscos é fundamental que o programador e a equipe adotem uma cultura na escrita de testes, de preferência automatizados, para garantir que o software se comporte como esperado durante todo o ciclo de vida do desenvolvimento.

Nesta apresentação explanarei a importância dos testes automatizados de acordo com a cultura ágil, os tipos de testes que podemos escrever, os prejuízos causados pelo não uso de testes, os benefícios obtidos a médio e longo prazo, e as dificuldades ao escreve-los.

F853760c988228c4a153333407e64f09?s=128

Rafael Ponte

May 08, 2015
Tweet

Transcript

  1. A importância dos testes automatizados no dia a dia_ Rafael

    Ponte @rponte Tuesday, April 9, 2013
  2. @rponte Tuesday, April 9, 2013

  3. Tuesday, April 9, 2013

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

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

  6. Solucionar bugs críticos e “apagar incêndios” Migrar ou Reescrever sistemas

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

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

    Treinar a equipe Tuesday, April 9, 2013
  9. Migrar ou reescrever sistemas de: Tuesday, April 9, 2013

  10. Migrar ou reescrever sistemas de: * Desktop para Web Tuesday,

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

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

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

    PHP para Java * Java para Ruby on Rails * Java para Java Tuesday, April 9, 2013
  14. após alguns minutos de conversa... Tuesday, April 9, 2013

  15. com o gerente ou a equipe, é comum escutar... após

    alguns minutos de conversa... Tuesday, April 9, 2013
  16. “Temos uma equipe de 8 programadores. E +3 vagas em

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

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

    Programador Tuesday, April 9, 2013
  19. “Fiz uma PoC com Ruby On Rails. É mais produtivo

    do que Java!” - Arquiteto Tuesday, April 9, 2013
  20. “Com o “Caker” podemos gerar cadastros em minutos.” - Gerente

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

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

  23. Eles procuram VELOCIDADE no desenvolvimento de novas funcionalidades Tuesday, April

    9, 2013
  24. Produtividade = Velocidade Tuesday, April 9, 2013

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

  26. Tuesday, April 9, 2013

  27. Tuesday, April 9, 2013

  28. Tuesday, April 9, 2013

  29. Tuesday, April 9, 2013

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

  31. Eles estão focando no local errado... * Java para Ruby

    on Rails Tuesday, April 9, 2013
  32. Mudar a forma como o programador trabalha! Tuesday, April 9,

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

  34. Zona de Conforto Tuesday, April 9, 2013

  35. Programador Cowboy Tuesday, April 9, 2013

  36. Code and Fix Abandona sua disciplina na hora do aperto

    O programador que os gerentes adoram Tuesday, April 9, 2013
  37. Programador Profissional Tuesday, April 9, 2013

  38. Disciplinado Mantém a tranquilidade e disciplina Se mantém em evolução

    Tuesday, April 9, 2013
  39. Boas Práticas Tuesday, April 9, 2013

  40. Escrita de Testes Automatizados Tuesday, April 9, 2013

  41. Testes Manuais versus Testes Automatizados Tuesday, April 9, 2013

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

  43. 1 2 3 4 5 6 7 8 0 17.5

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

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

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

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

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

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

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

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

    35 52.5 70 Produtividade Tempo "Cowboy" Profissional Produtividade Tuesday, April 9, 2013
  52. Se a coisa já é ruim com um programador cowboy...

    Tuesday, April 9, 2013
  53. imagina uma equipe de cowboys Tuesday, April 9, 2013

  54. Cowboys Profissionais 1s 2s 3s 4s 5s 6s F =

    Nova Funcionalidade F = Funcionalidade com Bug Tuesday, April 9, 2013
  55. 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
  56. 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
  57. 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
  58. 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
  59. 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
  60. 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
  61. Não é dificil perceber alguns padrões... Tuesday, April 9, 2013

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

  63. 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
  64. FUNCIONALIDADES “BUGAM” DO NADA 2 Tuesday, April 9, 2013

  65. 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
  66. DIMINUIÇÃO DE NOVAS FUNCIONALIDADES 3 Tuesday, April 9, 2013

  67. 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
  68. Por que isso acontece? Tuesday, April 9, 2013

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

    2013
  70. 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
  71. 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
  72. funcionalidades “bugam” do nada Não fazem teste de regressão 2

    Tuesday, April 9, 2013
  73. 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
  74. 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
  75. diminuição de novas funcionalidades Sem disciplina com testes 3 Tuesday,

    April 9, 2013
  76. 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
  77. 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
  78. 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
  79. Não é dificil escrever testes automatizados Tuesday, April 9, 2013

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

  81. CONCLUSÃO Tuesday, April 9, 2013

  82. Você só percebe os benefícios dos testes entre 6 meses

    e 1 ano Tuesday, April 9, 2013
  83. não existe uma receita de bolo para desenvolver software Tuesday,

    April 9, 2013
  84. mas sim um conjunto de princípios e práticas que podem

    te ajudar a desenvolver melhor Tuesday, April 9, 2013
  85. testes automatizados é apenas a ponta do iceberg Tuesday, April

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

  87. permita que sua empresa entregue software melhor Tuesday, April 9,

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

  89. use testes automatizados Tuesday, April 9, 2013

  90. testes automatizados eu aprovo! Tuesday, April 9, 2013

  91. Rafael Ponte rponte@triadworks.com.br Tuesday, April 9, 2013