我从Ubuntu VM(VirtualBox)运行我的黄瓜测试,主机是Windows。我现在想做的是在不同的IE版本(同样在VirtualBox中)中运行相同的测试。
因此,到目前为止,我所做的就是使用Vagrant设置IE8盒,为自己指定IP地址和转发端口(或者我希望:-)
config.vm.network :forwarded_port, guest: 80, host: 8080
config.vm.network :private_network, ip: "192.168.33.100"
该框已成功设置,现在我在黄瓜的配置中有些卡住了。
我在多个环境中运行测试,所以我APP_HOST
和aBROWSER
在命令行中通过了
Capybara.app_host = case ENV['ENV']
when 'test'
APP = 'http://test.myapp.co.uk'
when 'qa'
APP = 'http://qa.myapp.co.uk'
end
Capybara.default_driver = case ENV['BROWSER']
when 'chrome'
:chrome
when 'ie8'
:ie_8
else
fail 'Please choose one of the following: chrome, firefox, headless or IE. For example BROWSER=chrome'
end
我已经像这样设置了我的驱动程序配置
Capybara.register_driver :ie_8 do |app|
Capybara::Selenium::Driver.new(app,
browser: :remote,
url: 'http://192.168.33.100:80/wd/hub', # This is where I am unsure
desired_capabilities: :internet_explorer)
end
所以要进行测试,我要这样做 cucumber --tags @mytag BROWSER=ie8 ENV=test
目前,连接到我的盒子的url配置让我大跌眼镜,我以为这是您要连接到的盒子的ip地址和端口号?
当运行这个我得到一个错误
**end of file reached (EOFError)**
有人可以指出我要去哪里的方向吗
谢谢
更新
这样做时vagrant up
,我在控制台中得到了输出
default: Adapter 1: nat
default: Adapter 2: hostonly
default: Adapter 3: bridged
default: Forwarding ports...
default: 80 => 8080 (adapter 1)
default: 5985 => 55985 (adapter 1)
default: 5986 => 55986 (adapter 1)
default: WinRM address: 127.0.0.1:55985
default: WinRM username: vagrant
default: WinRM transport: plaintext
config.vm.network :forwarded_port, guest: 80, host: 8080
意味着您将80端口从来宾VM转发到主机的8080本地端口。
换句话说,如果要访问虚拟机的http:// http://192.168.33.100:80,则需要从本地主机访问http://192.168.33.100:8080。
在您的情况下,请更换
url: 'http://192.168.33.100:80/wd/hub'
经过
url: 'http://192.168.33.100:8080/wd/hub'
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句