标签: ./vendor/bin/phpunit
-
在编写 Lighthouse 5 自动化测试用例时,将单个测试方法拆分为两个后运行报错,提示 Call to undefined method Illuminate\Support\Facades\Config::set()。排查发现第二个方法中应用实例已不复存在。参考 PHPUnit 文档后,在 phpunit.xml 中设置 processIsolation 为 true,或者在运行测试时添加 –process-isolation 选项,即可实现进程隔离并解决该问题,使测试通过。
-
在运行 Lighthouse 测试用例时,遇到 Class ‘Overtrue\LaravelVersionable\ServiceProvider’ not found 错误。检查发现 vendor 目录未安装该包,但 bootstrap/cache/packages.phpunit.php 缓存文件中仍有其声明。分析原因是之前进行了 Git 本地重置导致缓存不一致,且缓存不应纳入 Git。最终手动删除 bootstrap/cache 目录下的缓存文件,再次运行测试后通过。
-
编写 Lighthouse 5 的自动化测试用例时,针对运行 GraphQL Query API 返回 200 的场景,重点测试 themeAssets 字段的响应。由于字段值无法预测且不准备插入新记录,因此仅验证字段是否存在。通过基于 $response->assertJsonStructure 断言响应具有给定的 JSON 结构来达成目的,最终运行测试并通过。
-
针对在 Laravel 6 中运行 phpunit 时出现内存耗尽的报错,文章介绍了解决该问题的过程。通过编辑 php.ini 文件将 memory_limit 设置从 1024M 提升至 4096M,成功解决了内存超限问题。此外,文章还建议避免运行全部测试用例,改用仅运行特定目录或文件的方式,如 tests/Unit 目录或单个测试文件,从而有效降低内存占用并缩短耗时。
