标签: watir-webdriver

页面上有2个相同的元素,如何使用watir点击第二个元素?

页面上有2个图像具有相同的图像src链接.如果我使用以下代码,它将单击第一个图像,那么如何单击第二个图像?

browser.image(:src, "https://itc.mzstatic.com/itc/images/btn-grey-small-edit.png").click
Run Code Online (Sandbox Code Playgroud)

ruby webdriver watir elements watir-webdriver

1
推荐指数
1
解决办法
2478
查看次数

无法使用OptionParser和rspec

我有一个简单的watir(网络驱动程序)脚本进入谷歌.但是,我想使用选项解析器在cmd中设置一个参数来选择一个浏览器.以下是我的脚本:

require 'optparse'
require 'commandline/optionparser'
include CommandLine
require 'watir-webdriver'

describe 'Test google website' do

  before :all do

    options = {}

    opts = OptionParser.new do |opts|

      opts.on("--browser N",
        "Browser to execute test scripts") do |n|
        options[:browser] = n
        $b = n.to_s
      end
    end

    opts.parse! ARGV

    p options
  end

  describe 'The test website should be displayed' do

    it 'should go to google' do
      $ie = Watir::Browser.new($b)
      #go to test website
  $ie.goto("www.google.com")
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

执行rspec ietest.rb --browser firefox -f doc只是给了我无效选项,ietest是我文件的名称.任何其他直观的方式通过Web驱动程序设置浏览器,而不改变脚本代码,将是受欢迎的.

ruby rspec watir optionparser watir-webdriver

1
推荐指数
1
解决办法
1406
查看次数

如何使用Ruby(Watir/WebDriver)捕获GET调用?

在我正在测试的网页上,当用户单击选择列表中的选项时,将进行GET调用.GET看起来像这样:

GET /mediaportal/captions/SCH/Follow%20Up%20with%20the%20Robles%20Family_SCH.xml 
Run Code Online (Sandbox Code Playgroud)

如何告诉Ruby监听GET请求并捕获它,或者更具体地说,捕获并将上面GET中请求的url放入变量中.

(我正在使用watir-webdriver gem,我希望那里有一些东西可以让我这样做.)

ruby rest watir watir-webdriver

1
推荐指数
1
解决办法
3819
查看次数

找到可见元素

有没有办法用Watir定位可见元素?

我想只找到可见的表单(通过索引参数),以便Watir返回第一个或第二个可见文本字段.

如何过滤不可见的字段/元素?用xpath可以做到吗?

watir watir-webdriver

1
推荐指数
1
解决办法
1795
查看次数

Ruby:从2d数组中的每个子数组中获取第n个元素

作为我们Watir测试套件的一部分,我们正在验证数据表.其中一个要求是特定列必须为空(除非选择了特定的单选按钮)所以在我的脚本中,我有以下代码

incidents = browser.table(:xpath, Xpath_CC).strings 
Run Code Online (Sandbox Code Playgroud)

浏览器是watir-webdriver浏览器对象在事件中提供我的这个2d数组

[["DateTime", "Problem", "Value", "Compared", "Number", "Causes", "Where", "Count", "Type"],
["May 07, 02:15 - 02:30", "Web", "38.46 %", "", "1", "UNKNOWN", "", "1", "J105"],
["May 07, 02:15 - 02:30", "Video", "40 %", "", "1", "UNKNOWN", "", "1", "J105"],
["May 07, 02:00 - 02:15", "Email", "30 %", "", "1", "UNKNOWN", "", "1", "J105"],
["May 07, 01:00 - 01:15", "Email", "70 %", "", "1", "UNKNOWN", "", "1", "J105"],
["May 07, 01:00 - 01:15", "Email", "70 %", "", …
Run Code Online (Sandbox Code Playgroud)

ruby unit-testing watir watir-webdriver

1
推荐指数
1
解决办法
560
查看次数

Watir/Ruby HTML实体

我试图匹配网站中的元描述,但无法通过HTML实体.我试过逃避角色和其他一些组合.如果您尝试匹配没有实体的文本区域,则没有问题.任何帮助都是适用的.

require "rubygems"
require "watir-webdriver"

include Watir

b = Watir::Browser.new :chrome

b.goto('http://dev01-new.firestonecompleteautocare.com/cf/oil-change/motor-oil-and-your-car')

if b.metas.any?{ |s| s.html.include? "Ever wonder what color your engine oil should 
be, or what affect temperature may have on it? Learn the answers to these 
frequently asked questions & more, here." }
     puts 'Yes'
else
     puts 'No'
end

b.close
Run Code Online (Sandbox Code Playgroud)

ruby watir watir-webdriver

1
推荐指数
1
解决办法
166
查看次数

Nokogiri没有从Watir加载"浏览器"

到目前为止我有这个:

require 'watir-webdriver'
require 'date'
require 'nokogiri'

browser = Watir::Browser.start 'https://example/ViewReport.aspx'

browser.link(:text, 'Combined Employee Performance Report').click

today = Date.today
yesterday = today.prev_day.strftime('%m' '%d' '%Y')

t = browser.text_field :id => 'UC255_txtStart'
t.set yesterday

t = browser.text_field :id => 'UC255_txtEnd'
t.set yesterday

btn = browser.button :value, 'Run Report'
btn.exists?
btn.click

page = Nokogiri::HTML.parse('browser')
links = page.css("a")
puts links.length
Run Code Online (Sandbox Code Playgroud)

当我尝试解析browserWatir用于站点URI的变量时,它给了我一个空白的HTML页面.

ruby watir nokogiri web-scraping watir-webdriver

1
推荐指数
1
解决办法
1930
查看次数

设置页面加载超时

我用chromedriver使用watir webdriver gem.我知道(https://code.google.com/p/chromedriver/issues/detail?id=9#c25)在chromedriver的新版本2.1中有一个特殊的页面加载超时.如何从ruby代码中设置它?

webdriver watir watir-webdriver selenium-webdriver

1
推荐指数
1
解决办法
4859
查看次数

如何在ruby中使用Watir打开选项卡

我正在尝试使用Watir Webdriver在Firefox中创建其他选项卡。但是我运气不好

打开浏览器后:

require 'watir-webdriver' b =Watir::Browser.new

我想打开标签页,但一直无法弄清楚如何访问浏览器上的“打开新标签页”按钮。那我该如何创建一个新标签页呢?

ruby selenium watir-webdriver

1
推荐指数
1
解决办法
4301
查看次数

Watir:当网页元素存在时总是等待

用户操作后,Web应用程序始终使用此div.我的测试脚本有这一行.逐字逐句.

@browser.div(:id => 'loading-indicator').wait_while_present
Run Code Online (Sandbox Code Playgroud)

在任何地方明确地包括这条线是可以的,但是丑陋和重复.

使用wait_until_present下一元素(" foo负载指示后"),有时会工作.然而,在某些情况下foo和负载指示同时存在,但foo不是visible?直到负载指示消失.

有没有办法,或许在env.rb,向watir-webdriver表明它应该始终wait_while存在这个元素?

watir cucumber browser-testing watir-webdriver pageobjects

1
推荐指数
1
解决办法
123
查看次数