当前位置:Gxlcms > PHP教程 > php一个简略的测试工具simpletest

php一个简略的测试工具simpletest

时间:2021-07-01 10:21:17 帮助过:17人阅读

php一个简单的测试工具simpletest
phpunit是很好的单元测试工具,而本文介绍一款更轻量级的单元测试工具,开源的,
simpletest,

1 下载:
http://sourceforge.net/projects/simpletest/,
可惜文档及项目主站要那个XXX,大家懂的

2 使用
下载后,只要测试文件中包含如下两个文件,就可以用了
require_once('simpletest/autorun.php');
require_once('simpletest/web_tester.php');

?>

3 比如测试一个界面吧
require_once('simpletest/autorun.php');
require_once('simpletest/web_tester.php');

class SimpleFormTests extends WebTestCase {

function testDoesContactPageExist() {
$this->get('http://www.example.com/contact.php');
$this->assertResponse(200);
}

}

?>
还可以测试表单的提交动作呢
function testIsProperFormSubmissionSuccessful() {

$this->get('http://www.example.com/contact.php');
$this->assertResponse(200);

$this->setField("name", "Jason");
$this->setField("email", "wj@example.com");
$this->setField("message", "I look forward to hearing from you!");

$this->clickSubmit("Contact us!");

$this->assertResponse(200);
$this->assertText("We will be in touch within 24 hours.");

}
运行后会看到通过的情况



再举一个单元测试的例子:
比如有个类LOG,是在磁盘上建立文件

require_once('simpletest/unit_tester.php');
require_once('simpletest/reporter.php');
require_once('../classes/log.php');

class TestOfLogging extends UnitTestCase {

function testCreatingNewFile() {
@unlink('/temp/test.log');
$log = new Log('/temp/test.log');
$this->assertFalse(file_exists('/temp/test.log'));
$log->message('Should write this to a file');
$this->assertTrue(file_exists('/temp/test.log'));
}
}

$test = &new TestOfLogging();
$test->run(new HtmlReporter());
?>

测试方法中所有都默认以test开头的,这点要注意,最后用$test->run(new HtmlReporter());表示以HTML格式输出


人气教程排行