宁静黄瓜浏览器每个功能的唯一会话
serenity cucumber browser unique session per feature
我在看宁静(以下版本)
<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 中的场景可以 运行 为 "browser per scenario" 模式。
如何实现?
黄瓜钩为您完成这项工作。
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 before.Do 请确保您在测试中引用了 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....
}
结论是您可以将 Cucumber 挂钩与功能中的注释结合使用以进行自定义设置和拆卸。
我在看宁静(以下版本)
<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 中的场景可以 运行 为 "browser per scenario" 模式。
如何实现?
黄瓜钩为您完成这项工作。
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 before.Do 请确保您在测试中引用了 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....
}
结论是您可以将 Cucumber 挂钩与功能中的注释结合使用以进行自定义设置和拆卸。