致命错误:找不到类“PHPUnit_Framework_TestCase”

use*_*784 5 php pear phpunit

我使用的是 XAMPP 1.8.1、Windows 7 64 位、Netbeans IDE 7.4 我已经安装了 PHPUnit。当我运行代码时,出现以下错误。

致命错误:在第 6 行的 D:\xampp\htdocs\PHPUnit\index.php 中找不到“PHPUnit_Framework_TestCase”类

代码是:

<?php

class StackTest extends PHPUnit_Framework_TestCase {

    public function testPushAndpop() {
        $stack = array();
        $this->assertEquals(0, count($stack));

        array_push($stack, 'foo');
        $this->assertEquals('foo', $stack[count($stack) - 1]);
        $this->assertEquals(1, count($stack));

        $this->assertEquals('foo', array_pop($stack));
        $this->assertEquals(0, count($stack));
    }

}

?>
Run Code Online (Sandbox Code Playgroud)

我在环境变量 PATH 中添加了D:\xampp\php有人建议我如何解决这个问题吗?提前致谢。

MKJ*_*MKJ 7

对于新的 PHPUnit 版本,您需要扩展TestCaseonly 而不是在PHPUnit_Framework_TestCase使用的帮助下use PHPUnit\Framework\TestCase;

旧的和被贬低的方式:

// No namespace in this old method

class ClassATest extends PHPUnit_Framework_TestCase {

}
Run Code Online (Sandbox Code Playgroud)

6.x 等版本采用的新方式:

// Namespace used in this new method

use PHPunit\Framework\TestCase;

class ClassATest extends TestCase {

}
Run Code Online (Sandbox Code Playgroud)

如果您不使用这种新方法,就会遇到困难。采用它,这将解决您的问题。


Mik*_*iLL 3

您是否尝试在网络浏览器中运行测试?这让我困惑了一段时间。PHPUnit 测试被编写为在命令行上运行。