Qualidade no desenvolvimento de software com PHPUnit

download Qualidade no desenvolvimento de software com PHPUnit

If you can't read please download the document

description

Palestra apresentada por Diego Tremper em dezembro de 2007 no PHP Conference Brasil 2007.Osasco/SP

Transcript of Qualidade no desenvolvimento de software com PHPUnit

  • 1. Qualidade no desenvolvimento de Software com PHPUnit

2. Roteiro

  • Introduo
  • Motivaes
  • O PHPUnit
  • Prtica
  • Integrao Contnua
  • Desenvolvimento Orientado a Testes (TDD)
  • Perguntas

3. Introduo

  • Testes Unitrios
    • So utilizados para testar as menores unidades de software desenvolvidas
    • Tem como objetivoencontrar falhasde funcionamento dentro de uma pequena parte do sistema.

4. Motivaes

  • Porque Testar?
    • Evita surpresas desagradveis
    • Reduz o tempo gasto com debug
    • Auxilia o refactoring
    • O cdigo est na fresco na mente, quaisquer erros podem ser corrigidos normalmente de maneira rpida.

5. Motivaes

  • Diagnosticar e resolver problemas aps a entrega freqentemente 100 vezes mais caro do que faz-lo durante as fases de anlise de requisitos, arquitetura e projeto.

6. Motivaes

  • Atitudes
    • Testar umaatividade destrutiva !
    • Pense de forma negativa quando estiver criando planos de teste ou explorando o software!
    • Explore funcionalidades, pense no que no foi pensado!

7. O PHPUnit

  • Escrito por Sebastian Bergmann
  • Baseado nos conceitos do JUnit
  • Atualmente na verso 3.2.2
  • Requer PHP 5

8. O PHPUnit

  • Quem usa?
    • eZ Systems
      • eZ Components
    • Zend Technolgies Ltd.
      • Zend Framework
    • PHP-GTK
    • IBM SDO
    • Agavi
    • Creole
    • Propel
    • Phing
    • Serendipity
    • Eu!

9. Instalao $ wget http://pear.phpunit.de/get/PHPUnit-3.2.2.tgz $ tar zxf PHPUnit-3.2.2.tgz $ cd PHPUnit-3.2.2 $ mv pear-phpunit phpunit $ cd .. $ cp -fR PHPUnit-3.2.2 /opt/ $ cd /opt $ ln -s PHPUnit-3.2.2/ phpunit $ vi /opt/phpunit/phpunit #!@php_bin@-d safe_mode=Off #!/usr/bin/php-d safe_mode=Off