草庐IT

ruby - Watir 打开多个浏览器和选项卡

如何使用我的code-watir打开多个浏览器,例如通过从0到10的while循环?这是我的代码:require'watir-webdriver'require'headless'classPage@headless=Headless.new@headless.start@browser=Watir::Browser.start'bit.ly/***'defself.get_connectionputs"Browserstarted"puts@browser.title@browser.driver.manage.timeouts.implicit_wait=3#3seconds@br

ruby - 使用 Watir-webdriver : Getting the text of h1 tag

我正在开发Watirwebdriver,我想获取页面h1标签的文本NewPageheader我写的代码是@title2=@browser.h1.attribute_value"text"puts@title2但是我得到的输出是Nil而不是“NewPageheader” 最佳答案 你试过吗puts@browser.h1.text或puts@browser.div(:class=>'col-center').h1.text 关于ruby-使用Watir-webdriver:Gettingth

ruby - var = Watir::Browser.start 'url' 后无法在 IRB 中使用变量

1.9.3-p327:001>require'watir-webdriver'=>true1.9.3-p327:002>b=Watir::Browser.new然后firefox启动了,我什么也做不了。我的IRB不允许我输入新命令。尝试了不同的浏览器初始化方式:b=Watir::Browser.new:operab=Watir::Browser.new:firefoxb=Watir::Browser.start'url'应该会出现类似这样的东西:=>#>,@driver=#Java::ComOperaCoreSystems::OperaDriver:0xeabd2f>>但是控制台没有输

ruby - 在 watir-webdriver 中保存图像

我需要将图像从recaptcha保存到本地主机磁盘,我正在使用watir-webdriver获取图像dom元素,但它不支持保存方法,就像watir那样。那么如何将图像保存到我的磁盘?HTML:和ruby代码:cap=@browsers[i].div(:id=>'recaptcha_image').image如何将图片文件保存到磁盘? 最佳答案 require'watir-webdriver'require'open-uri'image_src=@browsers[i].div(:id=>'recaptcha_image').imag

ruby - 如何使用 Watir (Ruby) 从不可见元素中读取文本?

页面上有一个div不可见但有一些我想捕获的值。在其上调用文本会返回一个空字符串。如何在不处理原始html的情况下获得显示的值?无论文本在浏览器中的可见性如何,我都可以强制.text返回实际值吗?irb(main):1341:0>d.first.visible?=>falseirb(main):1344:0>d.first.html=>"7"irb(main):1345:0>d.first.text=>""PS:有很多很多div(页面缓存响应并相应地显示它们)。我考虑过更改页面中的所有显示:无或单击以使其可见,但我希望尽可能避免这种情况。如果不可能,更改所有显示的解决方案none将是首选

ruby - watir-webdriver 检查表大小行数和列数

我正在开始将我的WATIR脚本转换为使用WATIRwebdriver的过程。我在我的WATIR脚本中使用了几个表格方法来检查HTML表格的大小(行和列)。myTable.row_countmyTable.column_countwebdriver中不存在这些方法,因此我正在寻找进行相同检查的好方法。对于行,这似乎给出了与row_count方法相同的结果myTable.rows.length对于表的列数,我尝试将表转换为字符串数组并获取第一行的长度,但转换为字符串数组需要一段时间。myCols=myTable.strings[0].length谁能建议一种更好/更快的获取表格大小的方法?

ruby - phantomjs 通过 watir-webdriver,不处理 javascript 警报

我正在尝试自动执行网页上的某些任务,其中一部分包括单击一个链接,该链接将显示一个javascript警报,您必须在其中按“确定”。麻烦的是,当它到达那个点时,它会失败并出现以下错误/Users/username/.gem/ruby/2.0.0/gems/selenium-webdriver-2.35.1/lib/selenium/webdriver/remote/http/common.rb:66:in`create_response':unexpectedresponse,code=405,content-type="text/plain"(Selenium::WebDriver::

ruby - Mechanize 的局限性是什么? mechanize 和 watir 之间的区别是什么

我正在使用mechanize来抓取一些网页。我需要知道什么是Mechanize限制?Mechanize不能做什么?它可以执行网页中嵌入的javascripts吗?我可以用它来调用javascript函数吗?我不认为它可以。我想Watir可以。它和watir有什么区别? 最佳答案 Mechanize可以做很多事情。它使用net/http,所以无论你用net/http能做什么,你都可以用mechanize来做。尽管根据他们的描述它支持更多:TheMechanizelibraryisusedforautomatinginteraction

ruby - 使用 Watir-Webdriver 测试是否打开新窗口

我正在使用Watir-webdriver,我想知道是否有一个好的方法来检查是否打开了一个新窗口。我在谷歌上搜索了一下,但没有找到任何东西,尽管我觉得应该有一个简单的答案。我有一个打印机友好链接,我想测试该链接是否在新窗口或选项卡中打开,如果可能,我想用ie、firefox、chrome和safari进行测试。谢谢! 最佳答案 可以查看窗口数:browser.windows.size或检查特定窗口是否存在:browser.window(:title=>"foo").exists?更多例子在thespecs.

关于 ruby??:如何处理 Watir::Exception::UnknownObjectException:

HowtohandleWatir::Exception::UnknownObjectException:我正在使用watir来使用while循环自动删除元素,但是当脚本到达末尾时,它会出错,因为while循环所依赖的元素不再可见。无论如何要让Watir继续进行测试吗?这是我的代码示例:12345678910111213141516classDelete_element deforg_roster_remove  parameters=Tt_parameters.new  driver=Login.new.log_in(parameters.username3,parameters.passwo