硒中的键盘按钮

时间:2017-01-11 10:28:10

标签: java selenium gwt

我正在尝试从网格中多选行,我使用下面的代码完成:

public void selectMultipleRows(Integer... indeces) {
    for (int i = 0; i < indeces.length; i++) {
        keyboard().keyDown(Keys.CONTROL);
        selectSingleRow(indeces[i]);
        keyboard().keyDown(Keys.CONTROL);
    }
}

我的问题是,为什么我应该两次写keyboard().keyDown(Keys.CONTROL);? 如果我写它一旦它不能正常工作。

1 个答案:

答案 0 :(得分:1)

可能是您第一次拨打keyboard().keyDown(Keys.CONTROL)激活CONTROL密钥,第二次呼叫将其取消激活。再次在下一次迭代中,重复相同的操作。如果删除第二个调用,则在下一次迭代中,它会取消激活CONTROL键,这就是它无效的原因。尝试将该行移出循环。

public void selectMultipleRows(Integer... indeces) {
    keyboard().keyDown(Keys.CONTROL);
    for (int i = 0; i < indeces.length; i++) {
        selectSingleRow(indeces[i]);
    }
}