PHPUnit 3.0新特性
PHPUnit 3.0引入了一系列的新特性以便用户更加方便地用它进行调试,并且使得3版本比以前任何版本的功能都更加丰富。
伪对象调试
你如何才能测试一个对象里面的方法被另外一个方法调用的时候运行是正确的呢?你如何可以忽略外部资源而单独进行调试呢?伪对象和局部测试可以为你解决这些问题。部分提供答复对这些和其它问题。
集成了Selenium组件
PHPUnit 3 集成了Selenium RC组件来提供更好的调试 (更高层次的平台测试来代替系统单一模块的独立测试)和浏览器兼容性测试(在不同的操作系统和浏览器中测试web应用) 。
代码覆盖面分析
怎么评估你的测试呢?怎么发现没有被测试的代码,或者换句话说,还没有被涉及到的代码呢?你怎么衡量代码测试的完整性? 所有这些问题可以由称为代码覆盖面分析的功能组件来解决。PHPUnit 3的一个新的特性就是为测试提供了更为详细的代码覆盖面详细信息。
PHPUnit的安装应该用PEAR的Installer实现
PHPUnit一般通过PEAR站进行发布,并且需要注册到本地的PEAR当中,PEAR站查看地址: pear.phpunit.de。以前的情况是这样的,目前PEAE的Installer可以直接通过PHPUnit站进行安装:pear安装phpunit/PHPUnit
早期从pear.php.net上面下载的PHPUnit和PHPUnit2安装包需要先卸载,因为现在PHPUnit 不再包含在PEAR当中了。
如何从PHPUnit 2.3 升级到3.0
PHPUnit3 向前兼容PHPUnit2.3。请注意,PHPUnit的2.0到2.3版本的类的名字的前缀是PHPUnit2_而不是PHPUnit_。目前的测试系统在PHPUnit3.0版本中仍然可以使用,但是推荐使用新的类的名字。
关于PHPUnit
在过去的十年中, PHP 已经发展成为一个小型网站到大型的Web运作平台都可以胜任的动态脚本语言。目前重要的商业逻辑也都可以用PHP来实现。但是,你如何来确保代码的运行的稳定性呢?当然,这个时候你需要一个好的工具,这也就是PHPUnit出现的原因。它是xUnit家庭成员中的一员,用来测试代码框架并让测试更加容易,功能分析更加轻松。
关于Sebastian Bergmann
Sebastian Bergmann 长期致力于众多的PHP应用项目的开发,也包括PHP项目本身。他目前在Skien 的eZ systems AS工作,负责eZ platform系统的管理组件。作为 PHPUnit 的开发者,他还帮助测试eZ 系统的许多组件。在业余时间,他喜欢研究开源软件和摄影,并喜欢旅行。