Codeception 生成的功能测试引发错误 'use statement with non-compound name'

Codeception generated functional test raising error 'use statement with non-compound name'

我正在尝试 运行 由我组织中的另一个开发人员编写的代码接受测试。我正在使用 php 5.6,这是一个带有 codeception 2.1 的 laravel 5 应用程序。我得到的具体错误是 The use statement with non-compound name 'FunctionalTester' has no effect

我们目录中的每个 codeception 生成的功能测试都包含该行 use \FunctionalTester;;我可以通过在行尾添加 as ft; 来抑制错误,但这不是重点。

在其他一些在线示例中,我在这里看到关键字 namespace 而不是 use

作为最后一个示例,命令 php ./vendor/bin/codecept generate:cest functional foo 生成以下文件(将引发该错误)

use \FunctionalTester;

class fooCest
{
  public function _before(FunctionalTester $I)
  {
  }blah blah blah

顺便说一句,php 不是我的主要语言。即使这个没有命名空间的 use 是多余的,我也看不出有什么意义。好的!谢谢!

移除

use \FunctionalTester;

您收到该警告的原因是,在全局命名空间中时,您正试图从全局命名空间导入 class,这不是必需的,因此没有效果。

将 Codeception 升级到 2.1.5,此问题已修复:https://github.com/Codeception/Codeception/commit/892f85388c8dd2c57e120f9a3e225074a9ae175b