TDD Project/Selenium Web Driver

[Selenium] Double Click and Execute JavaScript -Tip -

솔웅 2014. 2. 13. 09:50
반응형

오늘 일하다가 Selenium 으로 Double Click 을 구현해야 했습니다.


아래처럼 하면 됩니다.


Actions action = new Actions(WebDriverAction.getDriver());

action.doubleClick(element).perform();



근데 이게 잘 안 되더라구요.


HTML은 아래와 같은 형식이었거든요.


<SELECT style="FONT-FAMILY: Courier; FONT-SIZE: 10pt" ondblclick="runJavaScript('parameter')" size=8 name=select>
    <OPTION selected value="korea">
                South Korea      
    </OPTION>
</SELECT>


Select 메뉴 안에 있는 옵션을 더블 클릭하면 새로운 창이 떠오르도록 애플리케이션이 돼 있더라구요.



Select 메뉴라도 Dropdown 이 아니라 그냥 일반 Table 이나 div 처럼 화면에 다 표시 돼 있는 상황입니다.


여기에서 암만 위의 doubleClick 메소드를 사용해도 동작이 안 되더라구요.


한참 헤매다가 생각해 낸게 Double 클릭을 구현하지 말고 그냥 ondbclick 일 경우 실행되는 자바스크립트를 실행시키는 거 였습니다.


((JavascriptExecutor) WebDriverAction.getDriver()).executeScript("runJavaScript('parameter');");


이렇게 하면 됩니다.

퇴근하기 직전에 Debugging 하면서 한번 실행해 봤는데 새로운 창이 뜨더라구요.


내일 아침에 출근해서 전체 테스트 케이스를 실행해 봐야겠어요.


제대로 작동하길 바랍니다. ;;


Selenium Webdriver로 테스트 케이스를 구현할 때 제대로 동작하지 않는 event 가 있으면 이렇게 그냥 자바스크립트를 곧바로 실행시키는것도 좋은 방법인 것 같습니다.






반응형