首页 > 解决方案 > 不推荐使用 CakePHP 3.6 调度程序

问题描述

当我尝试使用请求运行测试时,我在 cakePHP 3.6 上出现错误。我尝试将本教程http 堆栈用于现有应用程序,但我已经更新了所有内容。我没有更新 cakePHP。我从 3.6 开始。此错误在 cakephp 核心中。有人知道如何解决吗?我什至不知道我应该在哪里搜索错误

调度程序已弃用。您应该更新您的应用程序以改用 Http\Server 实现。- vendor/cakephp/cakephp/src/TestSuite/LegacyRequestDispatcher.php, line: 73 您可以通过 在 config/app.php 中设置Error.errorLevel为来禁用弃用警告。E_ALL & ~E_USER_DEPRECATED在 [vendor/cakephp/cakephp/src/Core/functions.php,第 310 行]

标签: cakephp

解决方案


检查您是否正在调用parent::setUp()测试用例的setUp()方法。否则IntegrationTestCase不会使用MiddleWareDispatcher并且会退回到 deprecated LegacyRequestDispatcher

(查看IntegrationTestCase::_makeDispatcher()IntegrationTestCase::setUp()了解有关如何IntegrationTestCase确定要使用的调度程序类的详细信息。)


推荐阅读