gpt4 book ai didi

cucumber - 如何在 cucumber 中测试具有多个背景的相同功能

转载 作者:行者123 更新时间:2023-12-02 10:06:59 26 4
gpt4 key购买 nike

我有一个在 Cucumber 中运行良好的功能(一个 .feature 文件)。

该功能中所有场景的后台只是设置一个用户,然后以主管身份登录,例如

   Background:
Given I am logged in as a supervisor with an existing supervisee

...loads of scenarios

但是,应用程序的设计/目标已发生变化,无论您以主管还是用户身份登录,相同的场景都应该有效。对于应用程序的其余大部分来说,情况并非如此,因为这些应用程序的设计对于主管/用户来说并不对称。

是否有任何明智的方法可以避免复制和粘贴具有不同背景的整个功能文件?似乎没有一种方法可以参数化背景(例如使用 Either: Or: 节),也没有一种方法可以引入带有大量场景的外部文件。有想法吗?

   Background:
Given I am logged in as an existing supervisee

...same loads of scenarios

这是一些幻想的小 cucumber 语法(不存在)

   Background Outline:
Given I am logged in as a <user>

Backgrounds:
| user |
| supervisor with an existing supervisee |
| an existing supervisee |

...loads of scenarios

另一种不同的幻想小 cucumber 语法:

   Background:
Given I am logged in as an existing supervisee

Include Scenarios:
supervisor.features

最佳答案

如果是我,我就会把重复的内容吸收掉:

http://dannorth.net/2008/06/30/let-your-examples-flow/

另一种方法是在功能上使用标记,指示您要针对两个用户组运行场景。然后使用 around Hook 运行场景两次,每种类型的用户运行一次。

我们之前讨论过诸如背景轮廓之类的内容,但我们得出的结论是,不值得花费额外的复杂性来实现它。

关于cucumber - 如何在 cucumber 中测试具有多个背景的相同功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13141894/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com