gpt4 book ai didi

selenium - 如何使用selenium按下+单击

转载 作者:行者123 更新时间:2023-12-03 06:42:11 31 4
gpt4 key购买 nike

我的 Selenium 代码存在问题,无法正确执行按键 + 单击操作。

测试应打开 jqueryui.com 链接并选择页面上的前 2 个 li 元素。

我正在使用 Selenium 2.23 和 Firefox 10。我的代码如下(我尝试了 4 种不同的方法来让它工作,但没有执行):

FirefoxProfile profile = new FirefoxProfile();

profile.setEnableNativeEvents(true); WebDriver browser = new FirefoxDriver(profile); browser.get("http://jqueryui.com/demos/selectable/");

List elements = browser.findElements(By.cssSelector("ol#selectable li"));

 Actions a = new Actions(browser);      
a.keyDown(Keys.CONTROL)
.moveToElement(elements.get(0))
.click()
.moveToElement(elements.get(1))
.click()
.keyUp(Keys.CONTROL)
.build()
.perform();

Keyboard keyboard = ((HasInputDevices) browser).getKeyboard();
keyboard.pressKey(Keys.CONTROL);
List<WebElement> selectOptions = browser.findElements(By.cssSelector("ol#selectable li"));
selectOptions.get(1).click();
selectOptions.get(3).click();
keyboard.releaseKey(Keys.CONTROL);
    Actions builder = new Actions(browser);
builder.keyDown(elements.get(0), Keys.CONTROL)
.click(elements.get(0))
.click(elements.get(1))
.keyUp(Keys.CONTROL);
Action selectMultiple = builder.build();
selectMultiple.perform();

Robot robot = new Robot();
robot.delay(1000);
robot.keyPress(KeyEvent.CTRL_MASK);
elements.get(0).click();
elements.get(1).click();
robot.keyRelease(KeyEvent.CTRL_MASK);

browser.quit();

有人可以帮我提供一些其他建议吗?

最佳答案

这是一个bug in Selenium ,影响 Shift/Control/Alt 与 Windows 版 Firefox 上的点击相结合。给错误加注星标,也许他们会修复它。

关于selenium - 如何使用selenium按下+单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11407335/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com