迷惘的码农。
分类:
2008-03-25 10:42:49
“你打算何时写PHPUnit文档?”对于这个问题,长久以来,我的回答是“你不需要PHPUnit文档。只需阅读JUnit的文档或者买本关于JUnit的书籍,将用于JUnit的Java代码示例改编为用于PHPUnit的PHP代码即可。” 当我向O'Reilly德国办事处的Barbara Weiss和Alexandra Follenius谈及这些,他们鼓励我考虑是不是写本可作为PHPUnit文档的书。
本书讨论的是PHPUnit,一个用于采用PHP程序设计语言进行测试驱动开发的开源框架。本版次适用于3.2版的PHPUnit。当然,大多数示例应该 也可用于2.0-3.1版的PHPUnit。本书后面的“用于PHP 4的PHPUnit”(附录B - 译注)部分涉及了适用于PHP 4的旧版PHPUnit,它们已不再积极开发。
读者需要很好的理解使用PHP 5进行面向对象程序设计。对于德国读者,我可以推荐我写的书,,作为PHP 5 OOP的入门。一本关于此主题的英文书是Andi Gutmans、Stig Bakken和Derick Rethans的。
本书须在遵循Creative Commons Attribution License的情况下使用。你可在本书站点的找到它的最新版本。你可以对本书作任意修改并分发。当然,相对于发布你自己的私有版本,我更希望你将反馈和补丁发送至
<>
。
下面是本书排版方面的一些约定:
指示新的术语、URL、电邮地址、文件名、文件扩展名、路径名、目录和Unix实用程序。
等宽字体
指示命令、选项、开关、变量、函数、命名空间、方法、模块、参数、值、对象、文件内容或者命令输出。
等宽粗体
显示应由用户输入的命令或其他文本。
等宽斜体
显示应被用户提供的值替换的文本。
你应该特别留意采用下列样式从(一般)文本中分离出来的注意点:
这是个提示、建议或者常规注意。它含有关于在谈话题的有用的辅助信息。
这是个警告或提醒。
我要感谢Kent Beck和Erich Gamma开发了JUnit,给了我编写PHPUnit的灵感。还要感谢Kent Beck写了“JUnit Pocket Guide”,激起了我写本书的念头。感谢本书的发起者,O'Reilly的Allison Randal、Alexandra Follenius和Barbara Weiss。
感谢Andi Gutmans、Zeev Suraski和Marcus Börger在PHP 5的核心,Zend引擎2方面的工作。感谢Derick Rethans开发了Xdebug,这个PHP扩展让PHPUnit拥有了(分析)代码覆盖率功能。最后,感谢Mock对象系统的初始开发者Jan Borsodi、协助制作代码覆盖率报表生成程序的Michael Lively Jr.和Jan Kneschke,还有为Phing编写PHPUnit任务的Michiel Rook。