Selenium与Java绑定的多个动作

时间:2017-03-09 10:21:57

标签: java selenium-webdriver

我有一个场景,我必须通过在单击元素时按Ctrl键来选择多个元素。我正在使用Actions lib来构建和执行。我正在使用xpath来查找元素。和我必须使用的IE驱动程序。

这是我的代码:

    WebElement webElement = getDriver().findElement(By.xpath("//div[contains(@id, '"+id+"')]"));

    Actions builder = new Actions(context.getDriver());

    builder.keyDown(Keys.CONTROL)
            .click(webElement)
            .keyUp(Keys.CONTROL)
            .build()
            .perform();

奇怪的部分有时是有效的,有时则不然。对于我做错了什么或为什么它的工作不方便的任何想法?

[编辑] 上面的代码可以点击但不按住Ctrl。

1 个答案:

答案 0 :(得分:0)

您应该尝试提供以下其他元素:

   builder.keyDown(Keys.CONTROL)
            .click(webElement)
           .click(webElement2)
            .keyUp(Keys.CONTROL)
            .build()
            .perform();

然后它会起作用。