首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rspec :仅启动Firefox窗口。它没有加载URL

Rspec :仅启动Firefox窗口。它没有加载URL
EN

Stack Overflow用户
提问于 2013-05-06 15:21:42
回答 3查看 891关注 0票数 0

请帮助我了解为什么这只启动浏览器,而不是加载https://www.outbid.com/users/sign_in

代码语言:javascript
复制
require "rubygems"
require "rspec"
require 'watir-webdriver'

@browser = Watir::Browser.new :firefox
describe "outbid login" do

before(:each) do
@browser.goto 'https://www.outbid.com/users/sign_in'
end


it "should succesfully login you in the outbid.com" do
@browser.text_field(:id=> "login_user_email").set 'outbiduser2@gmail.com'
@browser.text_field(:id=> "login_user_password").set 'c0mplex1234'
@browser.button(:value=> "Log in").click
@browser.close
end

end

环境:

Windows 7 32位Firefox 20也尝试在8.0中安装- Watir,Watir-Webdriver,Selenium-Webdriver,rspec。

EN

回答 3

Stack Overflow用户

发布于 2013-05-07 00:11:25

当我运行你的代码时,我得到了以下异常:

代码语言:javascript
复制
Failures:

  1) outbid login should succesfully login you in the outbid.com
     Failure/Error: Unable to find matching line from backtrace
     NoMethodError:
       undefined method `goto' for nil:NilClass
     # stuff.rb:9:in `block (2 levels) in <main>'

问题是您创建的浏览器超出了测试范围。

这条线

代码语言:javascript
复制
@browser = Watir::Browser.new :firefox

需要在测试范围内。

您可能希望在每次测试开始时创建它,因此请将其包含在每一次测试之前的块中:

代码语言:javascript
复制
before(:each) do
  @browser = Watir::Browser.new :firefox
  @browser.goto 'https://www.outbid.com/users/sign_in'
end
票数 1
EN

Stack Overflow用户

发布于 2013-05-09 08:08:24

总的来说,我喜欢Justin的回答。但是,如果您想在每次测试之前节省打开和关闭浏览器的时间,那么我要做的是

1)在before(:all)部分创建浏览器对象

2)在before(:each)部分或after(:each)中,确保您通过执行诸如点击注销页面之类的操作来进行清理,这样您就不会在启动测试时启动会话。

票数 0
EN

Stack Overflow用户

发布于 2015-03-08 18:54:23

从seleniumHQ.com下载最新的selenium jar并将该jar添加到您的类中。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16393958

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档