2013-02-24 1 views
0

Java WebDriver 최신 릴리스 firefoxbrowser가 내가 코딩하고있는 유일한 제품입니다. 이것은 테스트하지 않는 자동화를위한 것입니다.Java Webdriver를 사용한 Selenium.Key 작업

헤더 부족 등을 무시합니다. 텍스트 상자를 선택하려고합니다. 그런 다음 커서가 상자의 시작 부분에 오도록 ctrl-home을 보냅니다. 그런 다음 이전에 확인 된 기준에 따라 x 번 삭제 명령을 보내야합니다. 글쎄, 그것은 텍스트 상자를 선택하고 주위에 깜박 거리는 커서를 볼 수 있지만 그것은 최고 홈 위치로 점프 것으로 나타나지 않으며, 아무것도 삭제되지 않는 것으로 보입니다. 분명히 내 첫 관심사는 홈 위치 다.

int a = 0; 
int del = dateline_name.length(); 
del = del + 2 ;         
       driver.findElement(By.id("id_story")).click(); 
        Actions action = new Actions(driver); 
        action.keyDown(Keys.CONTROL).sendKeys(Keys.HOME).keyUp(Keys.CONTROL).perform(); 
         while (a <= del) 
          { 
          action.sendKeys(Keys.DELETE).perform(); 
          a++; 
          } 
+0

중요한 정보가 누락되었습니다. Selenium의 어떤 버전입니까? 모든 브라우저에서 문제가 발생합니까? 그렇지 않은 경우 어떤 브라우저 및 브라우저 버전입니까? – JimEvans

+0

firefox 17 stable/long –

답변

0
+1

좋은 시도이지만'.perform()'은 내부적으로'.build()'를 수행합니다. 그게 문제라면 놀랄 것입니다. (나는이 문제가 무엇인지 완전히 확신하지 못한다.) – Arran

+0

커서가 텍스트 상자에 놓여있는 것을 볼 수 있습니다. 커서를 깜박임으로써 명령을 실행하지 않고 커서를 볼 수 있습니다. –

+0

+1에 대한 Arran의 의견 .build()는 반드시 암시 적이며 필수는 아닙니다 .perform()이 필요합니다. – Ardesco

0

나는 파이어 폭스와 같은 시도하고 작업에는 keyUp 등 (Keys.CONTROL)이 존재하지 않는 경우, 작동하는지 관찰했다. 작업 순서에서 keyUp을 제거하십시오. 감사.

+0

괜찮습니다. :) 조금 돌아와. –

+0

디버깅이 켜져있어 흥미로운 결과가 있습니다. 나는 곧 그들을 게시 할 것이다. –

+0

Sendkey의 키입니다. 집은 그 집의 본거지로 가져갈 것입니다. keyUp 이벤트가없는 CONTROL 이벤트의 keydown은 결과에 아무런 영향을 미치지 않습니다. 단순히 텍스트 상자의 시작 부분으로 이동하지 않습니다. –