Selenium コードで keyPress + クリック操作が正しく実行されないという問題があります。
テストは jqueryui.com リンクを開き、ページの最初の 2 つの li 要素を選択する必要があります。
私はSelenium 2.23とFirefox 10を使用しています。私のコードは次のとおりです(動作させるために4つの異なる方法を試しましたが、実行されませんでした):
FirefoxProfile プロファイル = 新しい FirefoxProfile();
profile.setEnableNativeEvents(真); WebDriver browser = new FirefoxDriver(profile); browser.get(" http://jqueryui.com/demos/selectable/ ");
リスト要素 = 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();
他の提案を手伝ってくれる人はいますか?