希望你们都很好。这是我的第一篇文章。
我正在尝试使用Cucumber和Selenium 2框架在Ruby中编写脚本。
我正在尝试找出如何点击基于悬停的组件上的任何给定链接。
sainsbury的网站http://www.sainsburys-live-well-for-less.co.uk/就是一个很好的例子。
如果您选择第一个链接,即配方和Insprirations,然后让Lets获得支持,那么您将被重定向到新页面。
我想通过脚本来做到这一点。
目前我在显示将鼠标光标放在Recipes&上时出现的叠加组件时遇到问题。灵感按钮。
我可以使用@ driver.mouse.move_to ele函数将鼠标悬停在组件上。下一步是查看集合,找到元素并单击它但问题是涉及的步骤太多,当我甚至检查隐藏面板中的项目数时,面板消失了。
我也尝试过使用Ruby Builder但没有运气。如果有人可以帮助我并以sainsbury网站为例,那么它会有很大帮助。
提前致谢。
答案 0 :(得分:1)
您可以使用sleep命令,然后使用您希望selenium在执行下一步之前等待的秒数。例如......:
sleep 2
在转到脚本的下一行之前会等待2秒钟。
同时检查 this 单击隐藏菜单的答案..
好。因为我记得你开始的时候是怎么回事。你去吧我已经为你做了这个..
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会对你有所帮助..