Selenium点击外部元素(按钮)

时间:2015-06-19 00:27:46

标签: jquery selenium action

我遇到的问题是我需要点击由JS触发的Element的扩展函数。

用于说明用户界面的图片:http://imgur.com/LUyYOy8

因此,当我将鼠标悬停在蓝色按钮上时,它会在底部显示3个其他形状。直到鼠标悬停在它上面,这些形状的HTML代码才会显示。我的方法是使用动作链将鼠标悬停在蓝色按钮元素上,然后单击该元素(我可以点击下面的3个形状)。

到目前为止,我有:

    Actions action = new Actions(driver);
    action.moveToElement(elementPosition).build().perform();
    action.moveToElement(elementPosition, offsetx, offxety).click();

但我无法点击Offset元素,这是一个正确的方法吗?谢谢

1 个答案:

答案 0 :(得分:0)

一旦使三个按钮可见,您是否能够检索三个按钮的HTML代码?如果是这样,您应该能够分别使用WebDriver.findElement()和WebElement.click()查找并单击它们。

例如:

// Find the blue button
WebElement blueButton = driver.findElement(By.id("blue"));
// Hover over the blue button
Actions action = new Actions(driver);
action.moveToElement(blueButton).build().perform();

// Find the red button
WebElement redButton = driver.findElement(By.id("red"));
// Click the red button
redButton.click();

// And so on...

在此示例中,您必须尝试在蓝色按钮悬停在之后找到的红色按钮。