2011-12-18 14 views

Respuesta

8

Según Madd0g, el código de Java podría tener este aspecto:

Actions shiftClick = new Actions(driver); 
    shiftClick.keyDown(Keys.SHIFT).click(element).keyUp(Keys.SHIFT).perform(); 
10

hmm .. no estoy muy seguro acerca de java, pero en C# esto se hace con el ActionBuilder -

new Actions(Browser).KeyDown(Keys.Shift).Click(element).KeyUp(Keys.Shift).Perform(); 
2

encontramos. http://code.google.com/p/selenium/wiki/AdvancedUserInteractions.

final WebElement button = driver.findElement(By.id("button")); 
    Actions actions = new Actions(driver); 
    if (ctrlKey) { 
     actions = actions.keyDown(Keys.CONTROL); 
    } 
    if (altKey) { 
     actions = actions.keyDown(Keys.ALT); 
    } 
    if (shiftKey) { 
     actions = actions.keyDown(Keys.SHIFT); 
    } 
    actions = actions.click(button); 

Ahora, si tan solo funcionó realmente.

+0

no hay ninguna) '' método de realizar (? Creo que debería haberlo. Además, creo que eres responsable de liberar la tecla modificadora (por lo que también necesitarás 'keyUp()') – Madd0g

+0

El código real que estoy ejecutando tiene los ups y el rendimiento. – bmargulies

+0

Claramente hay problemas con los controladores para FF8 y Chrome, que es contra lo que estoy trabajando. – bmargulies

Cuestiones relacionadas