Desenvolvimento orientado a testes (TDD) com PHP. Aprenda a realizar a instalação do PHPUnit no sistema operacional da Microsoft, o Windows Seven.


Olá pessoa(s), hoje irei apresentar um passo a passo de como instalar o PHPUnit no famoso sistema operacional do tiu Bil Gates, o Microsoft Windows 7 (Seven), antes de seguir com o tutorial queria falar um pouquinho sobre testes unitários e o desenvolvimento guiado por testes (o famoso TDD - Test Driven Development).

Afinal, o que é TDD?

TDD é um método para construir software e não apenas para testa-lo. Através do processo "Vermelho", "Verde", "Refatoração" você percebe que o código fica limpo, organizado e o melhor de tudo funcionando!

Ciclo: Vermelho > Verde > Refatoração

Primeiramente você cria um teste, ele então irá falhar (vermelho), em seguida você irá fazer a menor alteração possível para que o teste passe (verde), depois disso você irá refatorar o código fonte.

Existe uma espécie de "espiral da morte", que ocorre quando não há tempo para testar.

TDD: Espiral da Morte

Não sou um especialista em TDD, mas concordo muito com a sua metodologia.

Os principais benefícios:

  • Design guiado pelos testes, ou seja, primeiro teste e depois desenvolva
  • Aumento de qualidade no código fonte e da aplicação final
  • Testes são especificações e também documentações
  • O tempo perdido para desenvolver os testes é compensado por minizar os problemas e deixar o cliente satisfeito
  • Segurança
  • Código limpo com alta coesão

Chega de "blá blá blá" e vamos logo instalar o PHPUnit!

Para realizar a instalação do PHPUnit siga o passo a passo:

  • Abra o diretório em que o PHP foi instalado e execute o arquivo "go-pear.bat":
    go-pear.bat
 

Executando go-pear.bat

  • Por padrão a instalação marca a opção "system", basta pressionar a tecla ENTER:

Pressione a tecla "Enter"

  • Uma lista de PATH's será exibida como mostra a imagem abaixo, verifique esses PATH's e se eles estiverem corretos pressione a tecla ENTER, do contrário realize a configuração dos caminhos que estão incorretos.

Se os diretórios listados acima estiverem corretos, pressione a tecla "Enter"

  • Neste momento, o instalador irá lhe questionar se você deseja modificar o arquivo php.ini, para adicionar as configurações necessários do PEAR automaticamente. Pressione a tecla seguida da tecla ENTER.

Pressione a tecla "y" para configurar automaticamente o php.ini em seguida pressione "Enter"

  • A figura abaixo apenas ilustra que a alteração no arquivo php.ini foi realizada com sucesso. Pressione a tecla ENTER para continuar.

Pressione a tecla "Enter"

  • Na figura abaixo o instalador lhe notifica que você deve registrar as variáveis de ambiente, pressione ENTER para continuar.

O script "go-pear.bat" concluiu sua execução

  • Conforme o instalador solicitou agora iremos registrar as variáveis de ambiente, navegue até o diretório em que a instalação do PHP foi realizada e de um duplo clique no arquivo PEAR_ENV.reg, conforme ilustra a imagem abaixo:

Execute o arquivo "PEAR_ENV.reg", dando um duplo clique sobre ele

  • Uma caixa de diálogo como esta abaixo será exibida, clique no botão "SIM".

Clique no botão "Sim"

  • Ao clicar no botão "SIM" o sistema operacional Windows irá registrar as variáveis de ambiente, e uma mensagem como esta abaixo será exibida.

Clique no botão "Ok"

  • Agora iremos realizar a instalação do PHPUnit, para isto devemos adicionar alguns canais ao PEAR e logo em seguida realizar a instalação.
Execute o seguinte comando:
pear channel-discover pear.phpunit.de

Adicione os repositórios do PHPUnit

Adicionando o repositório do PHPUnit

  • Adione o repositório do Symfony executando o comando abaixo:
pear channel-discover pear.symfony-project.com

Adione o repositório do Symfony

Adicionando o repositório do Symfony

  • Com o comando a seguir iremos atualizar a lista de canais:
pear update-channels

Atualizando os repositórios

  • Vamos agora atualizar os canais, utilize o seguinte comando:
pear upgrade-all

Atualize os repositórios

Atualizando os repositórios

  • Neste momento, iremos realizar a instalação do PHPUnit, execute o seguinte comando:
pear install phpunit/PHPUnit

Instale o PHPUnit

Instalando o PHPUnit

  • A imagem abaixo ilustra que a instalação do PHPUnit foi realizada com sucesso.
phpunit --version

Testando se o PHPUnit foi instalado com sucesso

  • Para que você ao executar os testes unitários não necessite chamar o PHPUnit através de seu PATH absoluto, adicione o PATH do PHPUnit ao PATH do Windows.

Vá ao menu "Iniciar" > Clique com o botão direito em "Computador" e selecione a opção "Propriedades" > "Configurações avançadas do Sistema" > "Váriaveis de Ambiente"

Clique no botão "Novo"

Adicionando a variável de ambiente, o valor da variável deve ser preenchido com o caminho absluto do PHP

Agora abra um editor de texto e digite o seguinte código fonte:

<?php

class HelloWorld
{
    public function msg( $message )
    {
        return $message;
    }
}

class HelloWorldTest extends PHPUnit_Framework_TestCase
{
    public function testHelloWorld()
    {
        $obj = new HelloWorld();

        $this->assertEquals( $obj->msg('Olá') , 'Olá' );
    }
}

Salve o arquivo como: HelloWorldTest.php

Eu salvei o arquivo no diretório: C:\teste

Executando o teste unitário

Agora está tudo funcionando! Seja um novo desenvolvedor a partir de hoje e utilize testes unitários!

3 Respostas para “Instalando PHPUnit no Windows”

  1. Yuma Mar

    Segui o tutorial, e consegui realizar a instalação do PHPUnit sem problemas! Obrigada João Paulo!

    Responder
  2. Aluisio Martins Junior

    Em algumas instalações pode ocorrer o seguinte erro:

    ——- ERRO ——-
    Unknown remote channel: pear.symfony.com
    phpunit/PHPUnit requires package “channel://pear.symfony.com/Yaml” (version >= 2.0.0, version <= 2.99.99)
    phpunit/PHP_Ivoker requires PHP extenion "pcnt1"
    No valid packages found
    install failed

    A solução é:

    Digite no prompt os comandos abaixo:
    1º Comando:
    pear channel-discover pear.symfony.com

    2º Comando:
    pear install pear.symfony.com/Yaml

    3º Comando:
    pear install –alldeps pear.phpunit.de/PHPUnit

    Responder

Comentar

  • (não será publicado)