什么是SimpleTest?

什么是SimpleTest?

327人阅读 评论(0) 收藏 举报

SimpleTest 的核心是一个基于test case 类的测试框架。它们被编写为 base test case classes的扩展,每个被扩展的方法实际包含了测试代码。顶层测试脚本然后调用 run() 方法,以这些test case 出现的顺序来测试它们。每个方法被编写以调用各种开发者希望为真的断言,例如 assertEqual()。若希望值是正确的,成功的结果被分派到测试报告器,但是任何失败触发一个警告以及偏差的描述。

 

一个测试案例如下...

  1. <?php  
  2. require_once('simpletest/autorun.php');  
  3. class MyTestCase extends UnitTestCase {  
  4.       
  5.     function testCreatedLogFile() {  
  6.         $log = &new Log('my.log');  
  7.         $log->message('Hello');  
  8.         $this->assertTrue(file_exists('my.log'));  
  9.     }  
  10. }  
  11. ?>  

这些工具是为开发者设计的。Tests are written in the PHP language itself more or less as the application itself is built. 使用 PHP 自身作为测试语言的优点在于无需学习新的语言,测试可以马上开始,开发者可以测试代码的任何部分。基础的,可以被应用代码访问的所有代码也可以被测试代码访问,若它们以相同的编程语言编写。

 

最简单的测试案例是 UnitTestCase。此测试案例类包含相等,引用和模式匹配的标准测试。所有这些测试,其基本的期望值是:你期望的一个函数或方法的结果是什么。这是目前开发中最常用的测试类型,构成了测试案例的 95%。

 

一个网络应用顶级的任务不是从它的方法和对象中生成正确的输出,而是生成网页。WebTestCase 类测试网页。它模拟一个网页浏览器请求一个页面,包括 cookies, proxies, 安全连接,认证,表单,框架和大多数导航元素。有了这个类型的测试案例,开发者可以宣称信息在当前页面,表单和 sessions 被正确地处理。

 

一个 WebTestCase 如下...

  1. <?php  
  2. require_once('simpletest/autorun.php');  
  3. require_once('simpletest/web_tester.php');  
  4. class MySiteTest extends WebTestCase {  
  5.       
  6.     function testHomePage() {  
  7.         $this->get('http://www.my-site.com/index.php');  
  8.         $this->assertTitle('My Home Page');  
  9.         $this->clickLink('Contact');  
  10.         $this->assertTitle('Contact me');  
  11.         $this->assertPattern('/Email me at/');  
  12.     }  
  13. }  
  14. ?>  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值