在 composer.json 的 scripts 中配置 PHPUnit 命令(如 "test": "phpunit"),可实现 composer test 一键运行测试;需先以 --dev 安装 phpunit/phpunit,配置 phpunit.xml,并支持 verbose、coverage、CI 等多场景脚本。

在 Composer 的 composer.json 中配置 PHPUnit 测试脚本,能让测试像运行命令一样简单——比如直接执行 composer test 就自动跑完所有用例,无需记住完整路径或参数。
推荐以开发依赖方式安装 PHPUnit(兼容现代版本):
composer require --dev phpunit/phpunit:^10
./vendor/bin/phpunit --version
phpunit.xml 或 phpunit.xml.dist 配置文件(定义测试目录、引导文件、覆盖率等)编辑 composer.json,在 "scripts" 下加入自定义脚本:
"scripts": {
"test": "phpunit",
"test-verbose": "phpunit --verbose",
"test-cover": "phpunit --coverage-html coverage"
}说明:
立即学习“PHP免费学习笔记(深入)”;
"test" 是最简调用,Composer 会自动查找并执行 ./vendor/bin/phpunit
"test": "vendor/bin/phpunit"
"test": "rm -rf coverage/ && phpunit --coverage-html coverage"(Linux/macOS)cmd /c 包裹,或改用 cross-env 工具保证兼容性按需扩展更多语义化命令:
"test-unit":只跑单元测试(配合 --testsuite Unit 和 phpunit.xml 中的 suite 配置)"test-ci":CI 环境专用,输出 JUnit 格式供流水线解析:"phpunit --log-junit phpunit-report.xml"
"test-dry":仅检查配置是否有效,不真正执行:"phpunit --list-tests --no-configuration"
保存 composer.json 后即可使用:
composer test
composer test-verbose
composer run-script test && composer run-script post-test
composer test,失败则中断提交基本上就这些。关键是让脚本名直观、行为可预期,再配合好 phpunit.xml 配置,就能把测试真正“自动化”进日常开发流里。
以上就是如何通过Composer脚本(scripts)自动执行PHPUnit测试?(自动化配置)的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号