quarta-feira, 3 de setembro de 2014

TDD. O que é, e como inicio no PHP

    TDD Desenvolvimento Baseado em Testes
    Hoje inicio uma série de artigos referentes ao TDD. Farei um apanhado de várias bibliografias com o intuito de agrupar importante conhecimentos e encorajar mais desenvolvedores a atuarem por esta solução. A ideia é tentar ser o mais prático possível, encontrei diversas teorias em artigos em português, mas a prática mesmo é encontrada em artigos em inglês. Pois tenho visto poucos desenvolvedores realmente atuando com este paradigma.

    O que é Test Driven Development - TDD.
    Em português quer dizer Desenvolvimento orientado a teste. A ideia, segundo Kent Beck, que é considerado um de seus inventores, é: 
  • Não escreva uma linha de código a menos que você tenha escrito um teste de acerto e um teste de falha para a funcionalidade;
  • Elimine as duplicações
    Vantagens
    A grande vantagem é que os testes contém asserções que podem ser verdadeiras ou falsas. Após as mesmas serem consideradas verdadeiras os testes confirmam o comportamento correto, permitindo os desenvolvedores evoluir e refatorar o código.

    Como iniciar
    Vou fazer um breve roteiro de instalação do phpUnit, e do X-debug, que considero ser uma forma de iniciar o Desenvolvimento orientado a testes no PHP. Fiz um roteiro para debiam. Verifique como funcionará no seu sistema operacional.
  • Baixe o PHPUnit
wget https://phar.phpunit.de/phpunit.phar
  • Mude a permissão
chmod +x phpunit.phar
  • Mover para o bim
mv phpunit.phar /usr/bin/phpunit
  • Pegamos o Composer
php -r "readfile('https://getcomposer.org/installer');" | php
  • Escrever o composer.json
vim composer.json

{
    "require-dev": {
            "phpunit/phpunit": "4.2.*",
            "phpunit/php-invoker": "*",
            "phpunit/dbunit": ">=1.2"
    },
    "autoload": {
            "classmap": [
                "src"
            ]
}
}
  • Rode o composer
composer install || composer update
  • Instale o X-Debug
apt-get install php5-dev php-pear // PECL estará neste pacote

pecl install xdebug

  • Acesse o PHP.ini e configure o X-Debug inserindo estas linhas:

zend_extension=/usr/lib/php5/20100525/xdebug.so

xdebug.remote_enable=on

xdebug.remote_handler=dbgp

xdebug.remote_host=localhost
xdebug.remote_port=9000

Conclusão
Este seria um pequeno roteiro de instalação do PHPUnit, esta instalação seria apenas para os sistemas Debian. Se este não for seus sistema operacional, pegue um tutorial para instalação no seu Sistema Operacional ou considere as adaptações, a parte mais importante é acostumar a escrever os testes antes de escrever o código. Iremos testar alguns exemplos de aplicação nos próximos tutoriais.

Referências
https://phpunit.de/manual/current/en/installation.html
http://tableless.com.br/phpunit-como-iniciar-sem-dores/
http://br.phptherightway.com/#xdebug
http://xdebug.org/docs/install
Test-Driven Development By Example - Kent Beck
http://blog.thiagobelem.net/aprendendo-tdd-ou-desenvolvimento-orientado-a-testes/

Nenhum comentário:

Postar um comentário