支持Selenium-Webdriver / Ruby的方法

时间:2012-05-07 06:42:28

标签: ruby methods selenium webdriver selenium-webdriver

Selenium-ClientWatir后,我开始处理Selenium-Webdriver / Ruby

但是我没有得到任何方法的信息,而且我经常陷入我的脚本。就像在下拉菜单中设置选项一样,这是一个例子。我无法获得网页的所有元素。

我经常收到method not found

等错误

任何人都可以通过Selenium-Webdriver Ruby提供最新的方法列表来帮助我。

我试图在网络和论坛上找到相关信息。此URL包含方法,但它们也提供相同的错误。

2 个答案:

答案 0 :(得分:0)

我正在使用selenium webdriver与Ruby进行自动化。一个very good website就是这里有很多信息,特别是关于将Excel(自动化)与Ruby一起使用的信息。我担心你选择了C#& amp; Java有很多信息和Ruby需要在资源有限的情况下清理网络。堆栈溢出也有许多很好的例子,正如Kevin所说;搜索特定错误时更容易。如果我是你,我将下载一个非常有用的Firefox附加组件Firebug,它可以与Selenium IDE一起使用。这两个是非常强大的工具,可以帮助解决你遇到的大部分问题,至少是网页方面的。

Firebug您可以使用它来检查网页中的任何元素(只需右键单击),然后您可以指示webdriver通过id,link,css或xpath查找它。没有id或css标记时,Xpath是最好的。或者当我真的被卡住时我会做什么;是开始Selenium IDE(记录和播放)并记录我想要的动作(即从下拉菜单中选择一个值)。然后我将文件导出到一个Ruby脚本中,只从那里获取我需要的代码(通常是xpath)。

希望有所帮助。请发布仍然给您带来困难的任何特定错误,我们可以从那里获取。下载Firebug后,右键单击要选择的下拉框,并在此处发布inspect元素函数的结果。然后,我可能会对如何正确选择它提供进一步的帮助。

只是为了让您知道xpath应该看起来像下面的行..:

 element = driver.find_element(:xpath, "//input[@name='payment']")

输入显然是标签的名称。然后,您可以通过其内部属性来定位元素,例如..:value,name甚至type。上面的行会将此元素'搜索的结果放入变量元素中。如果您对分配变量不感兴趣,可以错过' element = '位。但是,在找到需要定位元素的所有内容之后,您将意识到您还需要(特别是如果您正在进行自动化)一种控制错误处理的方法,因为当Web驱动程序无法找到元素时,它将超时或崩溃还没有加载。

答案 1 :(得分:0)

我甚至无法判断是否有人指向此文档?

http://selenium.googlecode.com/svn/trunk/docs/api/rb/index.html