安装和使用PHPUnit

时间:2013-08-02 11:46:33

标签: php phpunit pear

我正在努力让PHPUnit工作。我的目录是针对php的C:/wamp/bin/php/php5.4.3现在,我读过没有PEAR的PHPUnit不起作用,所以我得到go-pear.phar文件并将其放在C:/wamp/bin/php/php5.4.3/PEAR/运行go-pear.phar文件中安装在系统上。第三,我使用Git Bash安装PHPUnit并将其放在C:/wamp/www/local/unit-testing/ 中(不确定目录是否正确)

现在,我创建了一个简单的UserTest文件

<?php
require_once "phpunit/PHPUnit/Autoload.php";
require_once "User.php";
class UserTest extends PHPUnit_Framework_TestCase
{
     protected $user;

    // test the talk method
    protected function setUp() {
        $this->user = new User();
        $this->user->setName("Tom");
    }

    protected function tearDown() {
        unset($this->user);
    }

 public function testTalk() {
        $expected = "Hello world!";
        $actual = $this->user->talk();
        $this->assertEquals($expected, $actual);
    }

}

并尝试要求此文件并从Windows的命令行运行它。但是,由于缺乏关于这些文件应该在哪里的说明,我似乎无法运行它。

截至目前,问题是命令行无法识别PEAR命令。尽管如此,我还是运行了PEAR_ENV.reg文件来将PATH变量添加到文件中。

其次,我不确定PEAR&amp; PHPUnit应该安装在我当前的结构中。我将所有php页面/项目保存在C:/wamp/www/local/&lt; - 我需要测试此目录中的文件。

1 个答案:

答案 0 :(得分:2)

PHPUnit批处理文件应该在您的路径中。然后从命令行运行PHPUnit将在shell中完成,当前目录是您安装所有内容的地方,并且它假定您的User.php文件也在那里。

我起诉一个bootstrap.php文件从我的源代码目录运行。

<?php
/**
 * This file is used to configure the basic environment for testing in PHPUnit.
 */

// PHP and Web server settings
error_reporting(E_ALL | E_STRICT);
date_default_timezone_set("America/Toronto");       // Set the default timezone
$_SERVER['SERVER_NAME'] = 'http://xxx';       // Set Web Server name

// Process the Include Path to allow the additional applications to be set.
$IncludePaths = explode( PATH_SEPARATOR, get_include_path() );
$NewIncludePaths = array_merge( $IncludePaths, array(dirname(__FILE__) ));
set_include_path( implode( PATH_SEPARATOR, array_unique($NewIncludePaths)));    // Update Include Path

//define('PHPUNIT_RUNNING', 1); // Indicate to the code that Automated Testing is running.
?>

我可以关注PEAR Installation Instructions for PHPUnit并在我的DOS路径中存在PHPUnit.bat的目录后启动并运行。