PHPUnit仅从命令行运行。为什么?

时间:2011-05-19 21:13:08

标签: command-line phpunit

我有以下代码:

<?php
    class MyTest extends PHPUnit_Framework_TestCase
    {
        public function testCalculate()
        {
            $this->assertEquals(2, 1 + 1);
        }
    }
?>

当我在浏览器中打开PHP文件时,出现以下错误:

致命错误:未找到类'PHPUnit_Framework_TestCase'

但是,如果我使用命令行,它可以正常工作: phpunit [local_path_here] /testcase.php

结果:

.

Time: 0 seconds, Memory: 5.00Mb

OK (1 test, 1 assertion)

为什么?如何让它在浏览器中运行呢?

4 个答案:

答案 0 :(得分:4)

您可以通过本机Web GUI集成附加组件以运行单元测试:

https://github.com/NSinopoli/VisualPHPUnit

答案 1 :(得分:2)

您无法在浏览器中运行单元测试。也许在将来:http://sebastian-bergmann.de/archives/638-PHPUnit-3.0.html#c4983

如果要查看代码覆盖率运行

phpunit --coverage-html=coverage testcase.php

然后打开coverage目录中的index.html文件。

否则,您必须从命令行运行测试。

答案 2 :(得分:0)

命令行上可能有不同的包含路径。检查除了普通php-cli.ini文件之外是否还有php.ini文件。从命令行运行PHP时将使用第一个。这可能有不同的include_path设置。它可能包括PEAR目录,例如,如果PHPUnit是通过PEAR安装的。

答案 3 :(得分:0)

您也可以使用eclipse运行phpunit。 请点击以下链接

http://pkp.sfu.ca/wiki/index.php/Configure_Eclipse_for_PHPUnit