2011-12-18 15 views

Odpowiedz

8

Zgodnie Madd0g, kod Java będzie wyglądać następująco:

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

hmm .. Nie jestem dokładnie pewien Java, C#, ale odbywa się to z ActionBuilder -

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

znalazł. 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); 

Teraz, jeśli tylko zadziałało.

+0

ma tam 'wykonać()' metoda? Myślę, że powinno być. Wierzę również, że jesteś odpowiedzialny za zwolnienie klawisza modyfikującego (więc będziesz potrzebować również 'keyUp()') – Madd0g

+0

Rzeczywisty kod, który prowadzę, ma wzloty i wyniki. – bmargulies

+0

Istnieją wyraźne problemy ze sterownikami dla FF8 i Chrome, z czym przeciwstawiam się. – bmargulies

Powiązane problemy