[Selenium] Double Click and Execute JavaScript -Tip -
오늘 일하다가 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 가 있으면 이렇게 그냥 자바스크립트를 곧바로 실행시키는것도 좋은 방법인 것 같습니다.