Comment keyPress + cliquez avec le sélénium

J'ai un problème avec mon Sélénium code de ne pas l'effectuer correctement la pression de touche + clic.

Le test doit ouvrir la jqueryui.com lien et sélectionnez les 2 premiers li éléments sur la page.

Je suis en utilisant le Sélénium 2.23 et Firefox 10. Mon code est comme suit (j'ai trie de 4 façons différentes de le faire fonctionner, mais aucun n'est effectué):

FirefoxProfile profil = new FirefoxProfile();

profil.setEnableNativeEvents(true);
WebDriver navigateur = new FirefoxDriver(profil);
le navigateur.get("http://jqueryui.com/demos/selectable/");

Éléments de la liste = navigateur.findElements(Par.cssSelector("ol#sélectionnable 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();

Quelqu'un peut m'aider avec quelques autres suggestions?

OriginalL'auteur user989379 | 2012-07-10