0

Soda用来跑步Selenium Webdriver。大多数情况下它按预期工作,但我试图弄清楚如何将左右光标键发送到浏览器以移动 jquery ui 滑块句柄。

我试过了

.typeKeys('css=a.ui-slider-handle[lr="l"]','\37')

 .type('css=a.ui-slider-handle[lr="l"]','\37')

.typeKeys('\37')

.type('\37')

似乎没有任何东西可以移动滑块。他们都没有错误。在执行此操作之前,我会单击手柄以确保...

有人知道怎么做吗?

4

2 回答 2

0

试试下面,我在 Firefox 中使用 jquery UI 滑块页面对此进行了测试,它对我有用。

.clickAt("//div[@id='slider']/a[1]", "")

//鼠标左键向下

.mouseDownAt("//div[@id='slider']/a[1]", "0,0")

//将光标从左边移动200

.mouseMoveAt("//div[@id='slider']", "200,0")

//释放鼠标按钮

.mouseUpAt("//div[@id='slider']", "");

于 2013-04-09T04:09:22.823 回答
0

Java中的工作代码-

WebDriver driver = new InternetExplorerDriver();
driver.get("http://jqueryui.com/demos/slider/");
//Identify WebElement
WebElement slider = driver.findElement(By.xpath("//div[@id='slider']/a"));
//Using Action Class
Actions move = new Actions(driver);
Action action = move.dragAndDropBy(slider, 30, 0).build();
action.perform();
driver.quit();

来源 - https://gist.github.com/2497551

于 2013-03-20T06:23:20.073 回答