【问题标题】:Bundle Setup within CodeceptionCodeception 中的捆绑设置
【发布时间】:2014-02-12 22:33:00
【问题描述】:

我尝试为我的 Symfony2 项目设置代码接收,该项目已经有 4 个工作包及其 PHPUnit 测试用例。现在我想添加代码接收测试用例,特别是对于验收测试,但是当我“引导”代码接收时,我发现所有生成的代码都在我的主结构中。由于我的应用程序已经被组织成包,我想为我的测试用例保留这个概念。特别是因为我的包中已经有我的 PHPUnit 测试用例。官方的 s2 codeception 并没有真正涵盖这一点。所以对我来说出现了一些问题:

  1. 如何设置在我的包中工作的代码接收
  2. 如何使用一个命令运行所有现有的 PHPUnit 测试用例和我的 codeception 测试用例?

【问题讨论】:

    标签: symfony codeception


    【解决方案1】:

    我只是以类似的方式进行设置。

    codeception 有一个 -c 开关,可以满足您的需要,即:

    vendor/bin/codecept bootstrap src/Acme/ExampleBundle
    

    然后:

    vendor/bin/codecept run -c src/Acme/ExampleBundle
    

    我不知道你的第二个问题。至少对于单元测试,将它们转换为 Codeception 测试是微不足道的,特别是因为我的测试都继承自一个抽象类,所以那里可能需要 10 行更改,主要是设置内容。

    【讨论】:

    • 您也可以在根codeception.yml 文件中添加以下行,而不必每次都指定-c 标志:include: - src/Acme/ExampleBundle 然后正常运行vendor/bin/codecept run。它将找到捆绑包的 codeception.yml 配置并在同一运行中包含所有测试。
    【解决方案2】:

    @Tom 这不起作用,因为 Symfony2-Module 正在寻找 bootstrap.php.cache 文件,该文件仍在 symfony2-app 的根文件夹中!我的解决方案是在你的包中创建一个指向你的 app/ 文件夹的链接!比它会工作!

    在 {your-root}/src/{your-app}/{your-bundle}:

    ln -s ../../../app .
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-15
      • 2023-03-28
      • 2012-02-01
      • 1970-01-01
      相关资源
      最近更新 更多