【问题标题】:Codeception, gherkin test, how organize my code?Codeception,gherkin test,如何组织我的代码?
【发布时间】:2018-09-02 13:35:00
【问题描述】:

我遵循了官方的 Codeception 指南(当然来自他们的网站),并创建了一个用 Gherkin 编写的简单测试。

使用命令codecept gherkin:snippets 命令,我打印了我必须实现的所有方法。然后我将这些方法复制到tests/_support/AcceptanceTester.php 文件中。

我的问题是:今天是一个示例测试,但明天,如果我必须创建大量验收测试,我该如何组织我的代码?

我想我必须在几个 PHP 文件中编写每个主要场景。但是,我可以在哪里保存这些文件?如何将这些文件链接在一起?

假设我必须创建两个验收测试的大场景。 Scenario A 可以单独运行,但Scenario B 必须在Scenario A 之后运行。

我需要在哪里创建文件 A 和 B?而且,我怎样才能对 Codeception “说”我只能在 A 执行后才能运行 Scenario B

对不起我的英语,我希望我的问题很清楚。

【问题讨论】:

标签: php codeception


【解决方案1】:

您可以通过使用 @depends 后跟测试签名来告诉 Codeception 一个场景依赖于其他东西。 According to the documentation:

更有趣的是,你可以让测试依赖于特性 情景。假设我们有 login.feature 文件,其中包含“常规日志 用户”的场景。在这种情况下,您可以指定每个测试 需要登录才能通过取决于“登录普通用户”场景:

@depends login:Log regular user

@depends 块内,您应该使用测试签名。执行你的 带有dry-run 的功能可以查看其中所有场景的签名。经过 用@depends 标记测试你确保这个测试不会 在它依赖的测试之前执行。

【讨论】:

  • 感谢您的回答。对不起,我在这里创建了一个新帖子,其中包含 pageObject/stepObject/Gherkin 的完整示例 (stackoverflow.com/questions/52132683/…)。我关闭了这篇文章。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多