Brasiliatestfest
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Brasiliatestfest

on

  • 376 views

PHP TestFest

PHP TestFest

Statistics

Views

Total Views
376
Views on SlideShare
376
Embed Views
0

Actions

Likes
2
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Brasiliatestfest Presentation Transcript

  • 1. Brasília TestFest Slides baseados no trabalho de Sebastian Bergmann, traduzido por José Ricardo (PHPMS) e adaptado por Silvano Girardi (PHPSC) e Rafael Dohms (PHPSP) Original: http://sebastian-bergmann.de/talks/
  • 2. O que será apresentado?
    • PHP
    • 3. TestFest
    • 4. Brasília TestFest
    • 5. PHP-DF
    • 6. Universidade Católica de Brasília
  • 7. Brasília TestFest
    • TestFests pelos mundo;
    • 8. Edições anuais;
    • 9. Edições brasileiras;
      • PHP-SP;
      • 10. PHP-SC;
      • 11. PHP-Rio;
  • 12. Motivação
    • (con|re)truibuir;
    • 13. Motivar e manter a comunidade ativa;
    • 14. Apresentação de novas ferramentas / metodologias;
    • 15. Aumentar a abrangência dos testes;
    • 16. Uma linguagem mais estável e com mais releases;
    • 17. Sorteio de brindes (10 ElePHPants)
    • 18. Reconhecimento – e-mail @php.net e acesso aos repositórios;
  • 19. Nosso Evento 9hrs 10hrs 12hrs 14hrs 17hrs O que se deve saber? Exemplos Mão na massa Almoço Retrospectiva
  • 20. 1, 2, 3 testando
    • Um teste por aquivo .phpt
    • 21. Isolamento total do teste
    • 22. Configuração independente por teste - caso necessário;
    • 23. Sobrevivência a erros graves;
    • 24. Help: http://phpt.info
  • 25. Dando nome aos bois Testes que ilustram falhas reportadas (bugs)‏ bug<bugid>.phpt Testes de comportamento básico de uma função <functionname>_basic.phpt Testes de comportamento errôneo de uma função <functionname>_error.phpt Testes de variações no comportamento de uma função <functionname>_variation.phpt Testes variados para extensões <extname><no>.phpt
  • 26. Keep It Simple ; ) --TEST-- Hello World --FILE-- Hello World --EXPECT-- Hello World
  • 27. Ok, simples demais --TEST-- Hello World --FILE-- <?php print 'Hello World' ; ?> --EXPECT-- Hello World
  • 28. Espere pra ver, com 'F' --TEST-- Hello World --FILE-- <?php print 'Hello World --EXPECTF-- Parse error: syntax error, unexpected $end in %s.php on line %d %s - qualquer string %d - numero %c - um character %w - espaço %i - inteiro %f - real %x - hexadecimal %e – separador de diretórios
  • 29. Agora esperando com ER's --TEST-- Hello World --FILE-- <?php print 'Hello World --EXPECTREGEX-- Parse error: (parse|syntax) error, unexpected $end in .* on line .*
  • 30. Sujou? Limpe!! --TEST-- Removendo arquivos temporários --FILE-- <?php $temp_filename = dirname ( __FILE__ ) . '/foo.tmp' ; $fp = fopen ( $temp_filename , 'w' ); fwrite ( $fp , 'bar' ); fclose ( $fp ); ?> --CLEAN-- <?php $temp_filename = dirname ( __FILE__ ) . '/foo.tmp' ; unlink ( $temp_filename ); ?> --EXPECT--
  • 31. Necessidades específicas --TEST-- Definindo um fuso para portabilidade --INI-- date.timezone=UTC --FILE-- --EXPECT--
  • 32. Condições --TEST-- Verificando se estamos em uma plataforma de 32 bits... --SKIPIF-- <?php if ( PHP_INT_SIZE != 4 ) die ( '32bit platforms only' ); ?> --FILE-- --EXPECT--
  • 33. Teste de Paternidade --TEST-- Um teste com uma seção de créditos --CREDITS-- James Bond <james@bond.com> #testfest Brasília on 2010-08-28 --FILE-- --EXPECT--
  • 34. ===================================================================== PHP : ./sapi/cli/php PHP_SAPI : cli PHP_VERSION : 5.2.15-dev ZEND_VERSION: 2.2.0 PHP_OS : Linux - Linux goias 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686 INI actual : /home/paulolima/phptestfest/php52 More .INIs : CWD : /home/paulolima/phptestfest/php52 Extra dirs : VALGRIND : Not used ===================================================================== Running selected tests. PASS strtr() function - basic test for strstr() [meusTestes/olamundo.phpt] ===================================================================== Number of tests : 1 1 Tests skipped : 0 ( 0.0%) -------- Tests warned : 0 ( 0.0%) ( 0.0%) Tests failed : 0 ( 0.0%) ( 0.0%) Expected fail : 0 ( 0.0%) ( 0.0%) Tests passed : 1 (100.0%) (100.0%) --------------------------------------------------------------------- Time taken : 0 seconds ===================================================================== Senta Pua! $ export TEST_PHP_EXECUTABLE=./sapi/cli/php $ ./sapi/cli/php run-tests.php <diretorio|*>
  • 35. O que testar?
    • http://gcov.php.net/
    • 36. http://qa.php.net/tested-methods.php/
  • 37. Onde testar?
    • Teste nas três versões se possível;
      • 5.2
      • 38. 5.3
      • 39. Trunk
    • Guarde seus testes;
    • 40. Ao final do dia vamos recebê-los por e-mail;
  • 41. Licença Este material para apresentação é publicado sob a licença “Attribution-Share Alike 3.0 Unported”. Você é livre para: Compartilhar – copiar, distribuir e transmitir o trabalho. Alterar – adaptar o trabalho. Sob as seguintes condições: Atribuição . Você deve atribuir o trabalho na maneira especificada pelo autor ou licenciador (mas não de maneira a sugerir que eles te apóiam você ou a maneira como você utiliza o trabalho). Distribua da mesma forma . Se você alterar, transformar ou construir algo baseando-se neste trabalho, você deve distribuir o trabalho resultante apenas sob a mesma licença, uma licença similar ou compatível. Para qualquer reuso ou distribuição, você deve deixar claro aos outros os termos de licenciamento deste trabalho. Qualquer uma das condições acima pode ser ignorada se você obtiver a permissões do proprietário dos direitos autorais. Nada nesta licença danifica ou restringe os direitos morais do autor.
  • 42. Divirtam-se!
    • Lembrem-se, 18hrs teremos a retrospectiva