黄瓜 - 如何以正确的顺序运行功能文件?

问题描述 投票:0回答:3

我有2个功能文件,如Login.featureSearch.feature。当我运行黄瓜时,它总是首先运行Search.feature文件。

我有可能首先运行Login.fetaure然后Search.feature

cucumber
3个回答
0
投票

您可以将它们放在相同的功能中,并将“登录”方案放在“搜索”方案之前。

如果我们假设登录是搜索的先决条件,您可以在后台编写登录部分:

特色:搜索..

背景:鉴于:我已经与用户登录系统..

场景:......当然然后


1
投票

避免期望按预期顺序执行功能的路径。这将导致您处于彼此依赖的状态以及他们离开系统的状态。这将很快产生维护问题。

相反,请确保您在此处识别出两种不同的情况。

能够登录很重要。使用此功能可以驱动登录的实现。也许创建一个帮助对象或方法,使其易于登录。步骤通常是一行或两行,并立即委托给帮助程序。

能够搜索很重要。此功能应使用先前功能中的帮助程序或帮助程序进行登录,然后执行搜索。登录是必须完成的先决条件,但这不是主要的事情。这是一个偶然的细节。

在开发系统并使用像Cucumber这样的工具来帮助您完成功能时,您将创建支持方法,使您的步骤变得更小。这些帮助方法可以并且通常应该在需要它们的其他情况下重复使用。

与从场景调用另一场景或期望场景以特定顺序执行相比,此方法更受青睐。


0
投票

将要素文件重命名为01Login.feature02Search.feature

在@Thomas声称的旁注中,不建议按顺序运行功能文件,因为当您有太多的功能文件和不需要的命名时,它会导致混淆。

© www.soinside.com 2019 - 2024. All rights reserved.