5 组织测试
PHPUnit 的目标之一是测试应当可组合:我们希望能将任意数量的测试以任意组合方式运行,例如,整个项目的所有测试,或者项目中的某个组件内的所有类的测试,又或者仅仅某单个类的测试。
简单来说我们上面写的都是运行单个测试类,如果我们想运行多个测试类的时候,就要使用这一章的内容了。
用文件系统来编排测试套件
编排测试套件的各种方式中,最简单的大概就是把所有测试用例源文件放在一个测试目录中。通过对测试目录进行递归遍历,PHPUnit 能自动发现并运行测试。
简单来说就是如果我创建了这样的目录结构:
并且在命令行中不指定具体的文件,而是输入命令,则PHPUnit则会访问这个目录下的所有*Test.php
文件:
phpunit ./
当 PHPUnit 命令行测试执行器指向一个目录时,它会在目录下查找
*Test.php
文件。
缺点
没有办法指定类的调用顺序,如果你的类是有调用顺序的,则这样的方式就不行了。
使用XML来编排测试配置将放在另一个专门的博客中。