如何在不使用场景大纲的情况下多次运行黄瓜场景

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

在我的黄瓜jvm项目中,我希望使用相同的数据集(在excel中提供数据)执行我的场景10次而不使用场景大纲。

谁能指导我如何实现这一目标?

java selenium cucumber bdd cucumber-jvm
2个回答
0
投票

首先,Scenario Outline旨在用于输入数据发生变化的情况。所以这首先不适合你的情况。

AFAIK您有以下选择:

在步骤内部设置逻辑。意味着循环执行内部所需的操作步骤胶水代码。

@Then("^Repetitive step$")
public void repetitive_step(final String repetitions) throws Throwable {

int reps = Integer.valueOf(repetitions);

    for(int i=0; i<reps; i++){
        // your step code
    }    
}

在功能文件本身中重复您的步骤。因此,如果您只想尝试一次并且不关心美学,那么您只需在功能文件中复制粘贴场景的次数即可。


0
投票

听起来你正在寻找的是一个场景内的for循环。我在几个地方看到了类似的问题,但你现在能做的最好的事情就是设计你的功能,以便在后台定义你的预备步骤,然后你有一个循环你的部分的场景大纲。

如果您可以使用不同的框架,我一直在开发一个名为Kherkin的项目,它允许您循环场景的特定部分以及许多其他常规Gherkin不允许您执行的操作。下面是一个例子,说明如何只循环一段scenrio:https://bitbucket.org/Muhatashim/zarif-kherkin/src/master/src/test/kotlin/org/bitbucket/muhatashim/kherkin/lang/script/IterationTest.kt

要了解有关Kherkin的更多信息:https://bitbucket.org/Muhatashim/zarif-kherkin/src/master/

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