Heim  >  Artikel  >  Backend-Entwicklung  >  php一个简略的测试工具simpletest

php一个简略的测试工具simpletest

WBOY
WBOYOriginal
2016-06-13 13:04:171237Durchsuche

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.");

}
运行后会看到通过的情况
 php一个简略的测试工具simpletest


再举一个单元测试的例子:
比如有个类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格式输出


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel: dede在线装配InitDede.php Nächster Artikel: ckeditor ckfinder 调整 php