Testes Unitários e fUnit - Felipe Nascimento

1.518 visualizações

Publicada em

Palestrante: Felipe Nascimento de Moura – Porto Alegre/ RS
Currículo: Analista de Sistemas e lider técnico em desenvolvimento web pelo grupo Agiplan, também ministra aulas de javascript, jquery e PHP e é o criador ou idealizador de diversos projetos open source como theWebMind, print_j, fUnit, foxTales, chessMate, entre outros addons para firefox e plugins para jQuery, além de também participar de projetos como a botaoteca.com.br.
Atualmente graduando pelo Senac/RS onde prepara como Tese, a nova versão do core para o theWebMind, Mind3rd. É formado técnico em informática e tem especializações em gerência de projetos e ajax.
Resumo: Abordagem sobre a utilidade dos testes unitários no desenvolvimento e como isto pode afetar sua produtividade. A palestra será focada no fUnit, biblioteca para testes unitários usando Javascript
Proposta: Esta palestra mostrará a utilidade do uso de técnicas para testes unitários e focará bastante no javascript exibindo diversos exemplos e explicações sobre a biblioteca fUnit.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.518
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
9
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Testes Unitários e fUnit - Felipe Nascimento

  1. 1. jf UnitMelhor prevenir do que remediar...
  2. 2. jf Unit Felipe Nascimento de Moura Analista de sistemas, desenvolvedor PHP Sênior e lider técnico pela Agiplan, Serviços Financeiros Criador ou mantenedor de diversos projetos Open Source, além de plugins para jQuery e addons para Firefox.Email: felipenmoura@gmail.comTwitter: felipenmouraWebsite: felipenmoura.org
  3. 3. jf Unit Mas eu sempre testo meus códigos Por que preciso me preocupar em escrever testes?
  4. 4. jf Unit Ou você quer agir assim o resto da vida?
  5. 5. jf Unit Você pode achar que está seguro, que tudo está ok... mas num belo dia ...
  6. 6. jf Unit É quando algo simplesmente absurdo acontece
  7. 7. jf Unit Algumas vezes, algo simples, um detalhe
  8. 8. jf UnitEm outras vezes,a coisa é crítica!Uma falha tão épica quebem poderia ser consideradauma conquista!
  9. 9. jf UnitAlém das vezes em que investimos em uma melhoriamas acabamos precisando voltar um passo por contade algo inesperado!
  10. 10. jf Unit Ok, estou preparado para começar a construir testesO primeiro passo é encontrar as ferramentas certas
  11. 11. jf Unit Testes unitários Execução de testes em partes mínimas do sistema Normalmente executado pelo próprio desenvolvedor Facilmente automatizado para execução repetitiva
  12. 12. jf Unit Parâmetros e retorno Testes repetitivos para cada chamada Métricas e gráfico de falhas
  13. 13. jf Unit 5 passos principais Set up Especificar o Input Chamar o metodo a ser testado Verificar o output Tear Down
  14. 14. jf Unit Versionador (SVN, GIT, etc) Ferramenta para automatização de testes (Junit,PHPUnit, jfUnit, SimpleTest, etc) Métricas e documentação (saber o que se espera dos testes) Histórico (sempre importante guardar o histórico dos testes)
  15. 15. jf Unit Lets code! Usaremos a jfUnit como biblioteca para testes Por isso, importaremos ela No header da página <script src=jfUnit.js></script>
  16. 16. jf Unit Forma simplesjfUnit.assert( yourFunction, param1, param2, paramN..., expected); Ex.:jfUnit.assert(soma, 10, 3, 13);
  17. 17. jf Unit Forma completajfUnit.assert({ call:yourFunction, param1: value1, param2: value2, paramN: valueN, expected: expectedValue callback: function(){}, description: , structureOnly: false, funcName: an alias to your function})
  18. 18. jf Unit Ex.:jfUnit.assert({ call:soma, primeiroValor: 10, SegundoValor: 3, expected: 13 callback: function(){}, description: Somando 10 com 3, structureOnly: false, funcName: an alias to your function})
  19. 19. jf Unit Outras possibilidades de teste: assert assertNot assertIn assertNotIn assertBetween assertNotBetween assertGT assertLt assertType
  20. 20. jf Unit assertInjfUnit.assertIn(function, Param1, Param2, ParamN..., Array()); Ex.:jfUnit.assertIn(soma, 10, 3, [12, 13, 14]);jfUnit.assertNotIn(soma, 10, 3, [11, 12, 16]);
  21. 21. jf Unit assertBetweenjfUnit.assertBetween(function, Param1, Param2, ParamN..., Array(2)); Ex.:jfUnit.assertBetween(soma, 10, 3, [12, 14]);jfUnit.assertNotBetween(soma, 10, 3, [9, 12]);
  22. 22. jf Unit assertGTjfUnit.assertGT(function, Param1, Param2, ParamN..., ExpectedMenorQue); Ex.:jfUnit.assertGT(soma, 10, 3, 10);
  23. 23. jf Unit assertLTjfUnit.assertLT(function, Param1, Param2, ParamN..., ExpectedMaiorQue); Ex.:jfUnit.assertLT(soma, 10, 3, 15);
  24. 24. jf Unit assertTypejfUnit.assertType(function, Param1, Param2, ParamN..., type); Ex.:jfUnit.assertType(soma, 10,3, integer);
  25. 25. jf Unit Structure Only var getPerson= function(){ var o = { age:25, name: felipe, jump: function(height){ return true; } } return o; };
  26. 26. jf Unit Structure Only jfUnit.assert({ call:getPerson, structureOnly:true, Expected:{ age:0, name:foo, jump:string } });
  27. 27. jf Unit On the Fly
  28. 28. jf Unit Perguntas?
  29. 29. jf Unit Felipe Nascimento de Moura Analista de sistemas, desenvolvedor PHP Sênior e lider técnico pela Agiplan, Serviços Financeiros Criador ou mantenedor de diversos projetos Open Source, além de plugins para jQuery e addons para Firefox.Email: felipenmoura@gmail.comTwitter: felipenmouraWebsite: felipenmoura.org

×