php*_*ete 2 php unit-testing simpletest
我尝试使用SimpleTest for PHP运行一些简单的测试时遇到错误.
目前,我正在根据文档扩展UnitTestCase类.我正试图在一个方法中测试我班级的不同方面.这是我的班级:
<?php
class SimpleClass extends UnitTestCase {
public function __construct() {
$this->test();
}
private function test() {
$x = true;
$this->assertTrue($x, 'x is true');
}
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试扩展TestSuite类并使用文档中的语法,但我得到了同样的错误:
Fatal error: Call to a member function getDumper() on a non-object in /simpletest/test_case.php on line 316
Run Code Online (Sandbox Code Playgroud)
关于我如何做到这一点的任何想法,还是我接近课堂测试错误?
不要在测试中使用构造函数!
SimpleTest允许您使用方法创建类.如果他们的名字以"test"开头,它会自动被识别为一种测试方法,如果你启动测试套件就会被调用.
您创建了一个构造函数来调用您的测试方法,并在没有进行所有设置的情况下进行断言,因此SimpleTest没有将其测试结果包装成一个好的输出所需的报告类.
更仔细地阅读教程,您将找到有关如何设置测试套件或如何开始单个测试的一些提示:
让我们假设我们正在测试一个名为Log in classes/log.php的简单文件记录类.我们首先创建一个测试脚本,我们将调用tests/log_test.php并按如下方式填充它...
代码示例改编自文档:
<?php
require_once('simpletest/autorun.php');
require_once('../classes/log.php');
class TestOfLogging extends UnitTestCase {
function testLogCreatesNewFileOnFirstMessage() {
$this->assertTrue(true);
}
}
?>
Run Code Online (Sandbox Code Playgroud)
注意,没有构造函数,如果使用PHP执行此文件,则自动运行文件将注意运行测试.
| 归档时间: |
|
| 查看次数: |
757 次 |
| 最近记录: |