PHP 单元测试:使用 PHPUnit 保障代码质量
一、单元测试的价值
提前发现 BUG:在开发阶段发现问题,而非上线后;
方便重构:修改代码后,运行测试用例即可验证功能是否正常;
减少联调成本:每个函数 / 方法都经过测试,联调时问题更少;
文档作用:测试用例可作为代码的使用示例。
二、PHPUnit 环境搭建
安装 Composer(PHP 包管理工具):
创建项目并安装 PHPUnit:
创建
phpunit.xml配置文件:
三、PHPUnit 基础用法
1. 编写测试用例
创建src/Calculator.php(待测试的类):
创建tests/CalculatorTest.php(测试类):
2. 运行测试
输出示例:
四、实战:测试业务逻辑
测试UserService中的密码加密方法:
五、进阶:Mock 模拟依赖
当测试的方法依赖数据库 / 第三方接口时,使用 Mock 模拟依赖,避免测试受外部影响: