【问题标题】:Cucumber with selenium opens several browsers带硒的黄瓜打开几个浏览器
【发布时间】:2018-05-30 00:39:33
【问题描述】:
有人能帮我弄清楚为什么每次我用黄瓜运行一个功能时都会打开 4 个浏览器吗?无论我的功能的场景数量或步骤数量如何,当我使用 cucumber 执行测试脚本时,都会打开 4 个 firefox 浏览器。
这是我的会议:
- Ruby 版本:ruby 1.9.3p551 (2014-11-13) [i386-mingw32]
- 黄瓜版本:1.3.18
- 水豚版本:2.4.4
- 硒版本:2.44.0
- 火狐版本:33.0
这是支持文件夹中 env.rb 的内容:
require 'capybara/cucumber'
Capybara.default_driver = :selenium
【问题讨论】:
标签:
ruby
selenium
cucumber
capybara
【解决方案1】:
我发现了问题,这是因为我在 step_defintions 文件夹中有几个文件 xxx_steps.rb 并且在每个 xxx_steps.rb 中我都有“require 'watir-webdriver'”
所以每次 cucumber 遇到 require 'watir-webdriver' 它都会打开一个新的浏览器。
【解决方案2】:
在java中我们使用@Before,然后用它标记第一个场景(@setup):
@Before("@setup") public void setUp() {
driver = utilities.DriverFactory.createDriver(browserType);