Chrome 在 运行 Cucumber 功能时启动两次
Chrome launching twice when running a Cucumber feature
我有一个问题,当我 运行 一个功能文件时 Chrome 驱动程序启动了两次。
我使用 Cucumber 和 Selenium Java 使用 IntelliJ。
当我为我正在处理的新功能区域创建一个新的 stepdef 文件时,问题就出现了。所以我很确定这与这些功能如何链接到步骤定义有关。我仍然在这里学习绳索,所以这是我没有太多经验的领域。
我的 Step Defs 在每个 stepdef 方法之前都带有 @Before 代码 运行 并且 @Before 代码包含一个
driver.get("https://mywebsite_under_test");
此网站 URL 两个 StepDef 文件各不相同。
当我启动测试时,我可以看到它启动的两个 chrome 会话是每个 Step Def 文件的 @Before 中提到的会话。我从 IDE 启动,我只是 运行 功能。
我的项目结构如下:
├───main
│ ├───java
│ └───resources
└───test
├───java
│ ├───Database
│ ├───Pages
│ └───stepdefs
│ ├───MOPStepDefs
│ └───MOSStepDefs
└───Resources
├───MOP Features
└───MOS Features
我没主意了。我搞砸了配置中的 Glue 值,但没有得到任何运气。
在你的 before 标签中添加场景标签,这样当你 运行 那个场景时它只会 运行s 即 @Before("@MOP") 其中 @MOP 是你的特征的标签或设想。在您的实例中,语法应为 @Before("@Automated, @MOP")
我有一个问题,当我 运行 一个功能文件时 Chrome 驱动程序启动了两次。
我使用 Cucumber 和 Selenium Java 使用 IntelliJ。
当我为我正在处理的新功能区域创建一个新的 stepdef 文件时,问题就出现了。所以我很确定这与这些功能如何链接到步骤定义有关。我仍然在这里学习绳索,所以这是我没有太多经验的领域。
我的 Step Defs 在每个 stepdef 方法之前都带有 @Before 代码 运行 并且 @Before 代码包含一个
driver.get("https://mywebsite_under_test");
此网站 URL 两个 StepDef 文件各不相同。
当我启动测试时,我可以看到它启动的两个 chrome 会话是每个 Step Def 文件的 @Before 中提到的会话。我从 IDE 启动,我只是 运行 功能。
我的项目结构如下:
├───main
│ ├───java
│ └───resources
└───test
├───java
│ ├───Database
│ ├───Pages
│ └───stepdefs
│ ├───MOPStepDefs
│ └───MOSStepDefs
└───Resources
├───MOP Features
└───MOS Features
我没主意了。我搞砸了配置中的 Glue 值,但没有得到任何运气。
在你的 before 标签中添加场景标签,这样当你 运行 那个场景时它只会 运行s 即 @Before("@MOP") 其中 @MOP 是你的特征的标签或设想。在您的实例中,语法应为 @Before("@Automated, @MOP")