希望大家都好。这是我的第一篇帖子。
我正在尝试使用Cucumber和Selenium2框架用Ruby编写一个脚本。
我正试图找出如何在基于悬停的组件上点击任何给定的链接。
塞恩斯伯里的网站http://www.sainsburys-live-well-for-less.co.uk/就是一个完美的例子。
如果你选择了第一个链接,即食谱和广告,然后是"让我们支持",那么你会被重定向到一个新页面。
我想通过一个脚本来做到这一点。
目前,我在显示覆盖组件时遇到问题,当将鼠标光标放在Recipes&灵感按钮。
我可以使用@driver.mouse.move_to ele函数来显示悬停组件。下一步是浏览集合,找到元素并单击它,但问题是涉及的步骤太多,当我检查隐藏面板中的项目数量时,面板就消失了。
我也尝试过使用Ruby Builder,但没有成功。如果有人能帮助我,并以塞恩斯伯里网站为例,那将大有帮助。
提前谢谢。
您可以使用sleep命令,后跟您希望硒在执行下一步之前等待的秒数。例如..:
sleep 2
将等待2秒钟,然后再转到脚本的下一行。
同时检查这单击隐藏菜单的答案。。
好的。因为我记得你刚开始的时候是怎样的。给你。我为你做了这件事。。
require "selenium-webdriver"
Selenium::WebDriver::Firefox
driver = Selenium::WebDriver.for :firefox
driver.navigate.to('http://www.sainsburys-live-well-for-less.co.uk/')
menu = driver.find_element(:xpath, "//div[@id='recipes-inspiration-menu']")
submenu = driver.find_element(:xpath, "//li[@class='first first-child children']")
driver.action.move_to(menu).click(submenu).perform
driver.find_element(:xpath, "//a[@title='Let's Get Baking']").click
正如我所说,下载并安装Firebug会对你有很大帮助。。