2013-09-06 2 views
0

사용하지 않는 버튼을 클릭해야하는 테스트가 있습니다. 이 작업을 수행하려면 Actions 클래스를 사용하고 있습니다. 사용자가 버튼을 클릭하면 경고가 생성됩니다. 스레드 "주요"org.openqa.selenium.NoAlertPresentException에서 예외 : 나는 예외가작업 클래스를 사용하여 비활성화 된 요소를 클릭하십시오.

Actions mouseActions = new Actions(driver); 
mouseActions.moveToElement(driver.findElement(By.id("disabled_element_id"))).click().build().perform(); 

그럼 내가 경고로 전환하려고 : 다음은 내가 작성한 코드입니다 없음 경고가 존재하지 않습니다.

+0

저는 Selenium이 비활성화 된 요소를 클릭하지 않을 것이라고 확신합니다. JavaScriptExecutor를 사용하여 자바 스크립트를 통해 버튼을 클릭하는 방식을 제안합니다. – Richard

답변

0

을 수행하기 위해, WebDriver가 비활성화 또는 보이지 않는 요소를 클릭 할 수 없습니다. 그래서 같은 것을 시도하십시오

JavascriptExecutor js = (JavascriptExecutor) webDriver; 
js.executeScript("document.querySelector(\"button[id=yourButton]\").click()"); 
2

Selenium은 사용자 상호 작용을 복제하기 위해 작성되었으므로 비활성화 된 개체와 상호 작용할 수 없으므로 사용할 수 없게됩니다.

중 하나를 사용할 수 있습니다.

  • 버튼을 활성화하기 위해 사용자가 수행하는 프로세스를 복제하십시오.

  • 를 사용하여 자바 스크립트를 활성화 또는 상호 작용이 작업을 위해 JavaScriptExecutor를 사용할 필요가

관련 문제