不带标记的Before/After钩子也可以运行带标记的测试



我有一个功能,该功能将在prod服务器上运行prod测试。标签是@prod。我还有其他可以在测试环境中运行的未标记测试。

env。我有一个Before do ..结束,打开一个新的浏览器并设置测试以在测试环境中运行。我也有和一个Before('@prod')块,设置测试助手在prod帐户中运行。

当我只运行prod测试时,使用cucumber——tags @prod,它运行prod测试。我希望只有Before('@prod')运行。然而,我看到两个BEfore块在妒忌。创建2个新的浏览器实例,并在第二个浏览器窗口中运行prod测试。当我的7个场景套件完成后,我有7个空白的打开的浏览器窗口,我的测试直到从未标记之前设置。

给定任何有效的测试商家帐户# features/step_definitions/ConsumerPortal.rb:1我们在平原之前我们在@prod Before当以'pos'用户登录到pos门户时

我看到同样的情况发生在After标记注销和关闭浏览器。首先运行带标签的标签,然后运行普通的After标签。如果我能在我的嫉妒中读出测试的标签。之前,我可以进行相应的设置。有办法做到这一点吗?

与before标签一起使用否定标签

@Before("~@prod")
@After("~@prod")

这将阻止Before和After标签对所有@prod标签运行。

或者一般情况下,所有的@Before和@After方法对任何标签都运行。

相关内容

最新更新