Behat中有儿童情景吗?

时间:2015-06-02 13:38:51

标签: php behat gherkin

我正在进行一些测试,这些测试有一些非常广泛的提交表单和嵌套表单。因此,我们有很多部分根据内容重复。例如,用户信息。目前在Behat,我正在创建我的功能中的所有内容,并复制/粘贴用户信息步骤。我正在使用Behat 3.x,并且不想尝试创建他们从2.5中删除的链接问题。

话虽如此,有没有更好的方法呢?我一直在想创建子代码块,但是我不确定它是如何工作的,因为Behat会尝试运行目录中的所有功能,除非你单独调用它们(我不反对)。从谷歌搜索这个问题,我不相信我是第一个看到链接步骤的价值,同时也了解与之相关的潜在复杂情况。我只是想知道是否有更好的方法在更Behat方法中这样做。

我当然可以欣赏Gherkin的简洁性,并且我希望能够让我的测试对其他人来说是可读的。链接,或在我的FeatureContext.php中构建自定义函数,使得我自己的调用本身就像Gherkin一样,但同时,我真的想要一种更好的方法来定义多个步骤。时间。这个特定问题是否有最佳实践?

1 个答案:

答案 0 :(得分:0)

我将尝试使用给出的示例进行回答:您可以编写一个用户信息工厂,用于测试在开始手头方案之前需要预先填充用户信息的方案。我假设您已经对此功能进行了现有测试,以测试添加该用户信息的基本功能,其他测试不需要以聚合更改的方式链接到这些测试。希望我能以你想要的方式理解你的问题。