0

我在看宁静(以下版本)

<serenity.version>1.1.26</serenity.version>
 <serenity.maven.version>1.1.26</serenity.maven.version>
 <serenity.cucumber.version>1.1.5</serenity.cucumber.version>

我有功能文件 F1、F2、F3。

我正在寻找支持在 F1 中运行所有场景(仅)以在单个浏览器会话中运行。

F2 和 F3 中的场景可以在“浏览器每个场景”模式下运行。

如何做到这一点?

4

1 回答 1

1

黄瓜钩为您完成这项工作。

import cucumber.annotation.After;
import cucumber.annotation.Before;

public static WebDriver DRIVER;

@Before
public void setUp() {
  // start browser if it does not exist yet
}

@After
public void tearDown() {
  // clean cookies
}

请注意,我之前使用的是黄瓜,而不是之前的 JUnit。请确保您DRIVER在测试中引用了 。挂钩将在每个场景之前和之后运行(或者例如,如果您使用场景大纲)。如果您想要对某些带注释的功能进行特定设置,例如:

@slowtest
Feature: F1 feature

然后你可以使用:

import cucumber.annotation.After;
import cucumber.annotation.Before;

public static WebDriver DRIVER;

@Before("@slowtest")
public void setUp() {
  // start browser if it does not exist yet
}

@After("@slowtest")
public void tearDown() {
  // close browser or clean cookies, or....
}

结论您可以将黄瓜钩子与功能中的注释结合使用,以进行自定义设置和拆卸。

于 2016-03-01T10:10:39.560 回答