PHPUnit 5.1 中文手册:自动化测试指南

5星 · 超过95%的资源 需积分: 9 26 下载量 20 浏览量 更新于2023-03-16 收藏 992KB PDF 举报
"PHPUnit中文手册-5.1版,由Sebastian Bergmann编写,提供了关于安装、编写测试、命令行执行、基境管理、测试组织、风险测试、未完成测试与跳过测试以及数据库测试等全面的指导。" PHPUnit是PHP编程语言中的一个自动化测试框架,用于编写和运行单元测试。本手册详细介绍了如何使用PHPUnit进行测试驱动开发(TDD)和行为驱动开发(BDD)。 1. **安装PHPUnit** PHPUnit的安装可以通过多种方式,包括PHP档案包(PHAR)、Windows安装、校验PHAR发行包以及使用Composer。Composer是PHP的依赖管理工具,可以方便地将PHPUnit添加到项目依赖中。 2. **编写PHPUnit测试** 测试依赖关系是指测试之间的相互作用,数据供给器允许为测试提供多种输入数据,以便测试不同场景。测试异常和PHP错误时,可以检查是否正确抛出预期的异常或错误。对输出进行测试确保了程序的输出符合预期,而边缘情况测试则关注在边界条件下的代码行为。 3. **命令行测试执行器** PHPUnit提供了丰富的命令行选项,用户可以通过这些选项定制测试的执行,如指定特定测试、设置代码覆盖率报告等。 4. **基境(fixture)** 基境是每个测试前后的准备和清理工作,如`setUp()`和`tearDown()`方法。变体允许在不同环境下运行相同的测试,基境共享可以跨测试重用状态,但要注意全局状态可能引发的问题。 5. **组织测试** 测试可以按照文件系统结构或XML配置文件进行编排,方便管理和运行大规模的测试套件。 6. **有风险的测试** 无用测试指的是没有实际测试任何代码的测试,意外的代码覆盖可能表明测试不完整,测试执行期间的输出可能干扰其他测试,测试超时可能导致测试中断,全局状态篡改可能影响测试的独立性。 7. **未完成的测试与跳过的测试** 未完成的测试标记为待处理,跳过测试则完全不执行,可以使用`@requires`注解根据环境条件跳过某些测试。 8. **数据库测试** 数据库测试支持多种数据库供应商,但存在一些挑战,如事务管理、数据清理和建立基境。测试分为四个阶段:清理数据库、建立基境、运行测试和拆除基境。通过`getConnection()`和`getDataSet()`方法配置数据库测试用例,可以使用不同的DataSet和DataTable实现,以及数据库连接和断言API来验证数据表的状态。 这个手册是学习和精通PHPUnit的重要参考资料,它详细阐述了如何有效地利用PHPUnit进行测试,确保代码的质量和稳定性。