在 Debian 上使用 PhpStorm 进行 PHPUnit 单元测试
一 环境准备
- 安装 PHP 与调试扩展:sudo apt update && sudo apt install -y php php-xdebug
- 安装 Composer(推荐):sudo apt install -y composer
- 建议项目使用 Composer 管理依赖,后续通过 vendor/autoload.php 加载 PHPUnit 与业务代码。
二 安装与配置 PHPUnit
- 方式 A(推荐,项目内安装):在项目根目录执行 composer require --dev phpunit/phpunit,生成 vendor/autoload.php 与 PHPUnit。
- 方式 B(全局安装):composer global require phpunit/phpunit,然后将全局 Composer 的 bin 目录加入 PATH,以便命令行使用 phpunit。
- 方式 C(PHAR 包):从 phpunit.de 下载与当前 PHP 版本匹配的 phpunit.phar,保存到项目或系统路径,并在 PhpStorm 中指定该 PHAR。
三 在 PhpStorm 中配置测试框架
- 配置 PHP 解释器:File > Settings > Languages & Frameworks > PHP,添加本机 php 可执行文件,确认版本与扩展正常。
- 配置 PHPUnit:File > Settings > Languages & Frameworks > PHP > Test Frameworks,点击 + 新建:
- 选择 PHPUnit by Composer(项目内安装时),指定 vendor/autoload.php 作为引导;
- 或选择 PHPUnit by PHAR,指定下载的 phpunit.phar;
- 可同时指定项目根目录的 phpunit.xml 作为配置与引导入口。完成后点击验证/同步,确保识别到 PHPUnit 类与版本。
四 编写与运行测试
- 生成测试:在目标类上使用 Navigate > Go to Test(或 Ctrl+Shift+T / Cmd+Shift+T)创建测试,选择 PHPUnit 模板;也可新建文件并继承 PHPUnit\Framework\TestCase。
- 基本测试示例(tests/ExampleTest.php):
- 示例:
-
assertTrue(true);
- }
- }
- 运行与调试:
- 在测试类或方法上右键选择 Run ‘ClassName’/‘testMethod’;
- 需要断点调试时,在代码行号左侧点断点,右键选择 Debug;常用快捷键:F7 进入、F8 步过、F9 继续。
五 使用 phpunit.xml 与覆盖率
- 基本 phpunit.xml(项目根目录):
- 要点:
- bootstrap=“vendor/autoload.php” 用于自动加载依赖;
- ./tests 指定测试目录与文件后缀;
- 配置覆盖率统计范围(统计 src 下代码的覆盖率);
- 在 PhpStorm 中可直接对 phpunit.xml 右键运行整个测试套件,并可在设置中启用覆盖率(Run > Edit Configurations > Code Coverage)查看覆盖率报告。