导航

simpletest:一个简单的PHP试工具

Posted on 2013-10-04 16:44  eastson  阅读(387)  评论(0编辑  收藏  举报

1. 下载: http://simpletest.org/ 。
2. 下载后,只要测试文件中包含如下两个文件,就可以用了 :

<?php 
require_once('simpletest/autorun.php'); 
require_once('simpletest/web_tester.php'); 
?> 

3. 比如测试一个界面:

<?php 
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,是在磁盘上建立文件:

<?php 
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格式输出