我遵循官方的Codeception指南(当然是从他们的网站),我创建了一个用Gherkin编写的简单测试。
使用命令codecept gherkin:snippets
命令,我打印了我必须实现的所有方法。然后我将这些方法复制到tests/_support/AcceptanceTester.php
文件中。
我的问题是:今天,这是一个示例测试,但明天,如果我必须创建大量的验收测试,我该如何组织我的代码?
我想我必须在几个PHP文件中编写每个主要场景。但是,我可以保存这些文件?如何将这些文件链接在一起?
假设我必须创建两个大的验收测试场景。 Scenario A
可以单独运行,但Scenario B
必须在Scenario A
之后运行。
我在哪里需要创建文件A和B?而且,我怎么能“说”到Codeception我只能在Scenario B
被执行后运行A
?
对不起我的英语,我希望我的问题很清楚。
您可以通过使用@depends
后跟测试签名来告诉Codeception场景依赖于其他内容。 According to the documentation:
更有趣的是,您可以根据功能场景进行测试。假设我们有
login.feature
文件,其中包含“Log regular user”方案。在这种情况下,您可以指定要求登录的每个测试都依赖于“Log regular user”方案:
@depends login:Log regular user
在
@depends
区块内你应该使用测试签名。使用dry-run
执行您的功能,以查看其中所有方案的签名。通过使用@depends
标记测试,您可以确保在依赖测试之前不会执行此测试。