【问题标题】:Codeception generated functional test raising error 'use statement with non-compound name'Codeception 生成的功能测试引发错误“使用非复合名称的语句”
【发布时间】:2016-04-12 14:04:57
【问题描述】:

我正在尝试运行由我所在组织的另一位开发人员编写的代码接收测试。我在 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 与全局命名空间中的对象(非复合对象)一起使用的错误。导致它的代码是由 codeception 自动生成的。据我所知,它只发生在我的系统上。
  • 我想弄清楚你的问题是什么,因为这里只有陈述。 :)
  • 我想知道为什么我从 codeception 框架生成的代码中得到一个错误,而这对其他人来说似乎不是问题。我想我的问题是关于运行测试而不在第 2 行引发异常。

标签: php laravel namespaces codeception


【解决方案1】:

【讨论】:

    【解决方案2】:

    删除

    use \FunctionalTester;
    

    您收到该警告的原因是,当您在全局命名空间中时,您正尝试从全局命名空间导入一个类,这是不需要的,因此没有任何效果。

    【讨论】:

      猜你喜欢
      • 2014-08-17
      • 2014-07-07
      • 2015-05-25
      • 1970-01-01
      • 2017-05-17
      • 1970-01-01
      • 2014-12-19
      • 2020-05-26
      • 1970-01-01
      相关资源
      最近更新 更多