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