나는 Selenium을 사용하여 firefox 브라우저에서 실행중인 응용 프로그램을 테스트하고 있습니다. 때로는 Selenium이있는 버튼을 클릭하고 싶을 때가 있습니다. 내 눈으로 그 요소를 볼 수 있기 때문에 나는이 이상한 것을 발견한다. (ExpectedConditions.visibilityOfElementLocated()에 의해) Selenium이 그래픽으로 표시되는 요소를 찾을 수없는 이유
- wait.until : 이미 같은 다른 exemple 근무 여러 방법을 시도했다 (내가 경로 변수에 XPath를 사용하고, 나는 그가 올바른지 확인 해요), 내가 게시
- 그런 다음 다시
(1000)
편집 1 :
<button type="button" class="btn btn-xs btn-block btn-stroke" id="252_button">
Delete
</button>
요소는 내가 액세스를 시도하고있다. 나는 그것을하기 위해 xpath를 사용한다.
iframe 요소에 없습니다.
내가 찾아 매개 변수에 XPath를주고 그것을 클릭하도록되어이 방법 한 요소에 액세스하려면 : 여기
특정 XPATH :
public void findAndClick(String xpath) {
By by = By.xpath(xpath);
//wait.until(ExpectedConditions.presenceOfElementLocated(by));
wait.until(ExpectedConditions.visibilityOfElementLocated(by));
driver.findElement(by).click();
}
편집 2 // 사업부의 [을 2]/div/div/div/button Selenium 플러그인을 사용하여 찾았습니다.
편집 3 :
내가지고있어 예외는
StaleReferenceElementException입니다 : 요소가 캐시에서 찾을 수 없습니다 -이 고개를 이후 아마도 페이지에 변화가 있습니다. 내가 그것을보고 수동으로 클릭 수를 변경할 수 없기
The element has been deleted entirely. The element is no longer attached to the DOM.
하지만, 수 없습니다 :
나는이 예외 구성품을 설명 page에 갔다
, 그것은 말한다.
대상 요소에 'HTML'코드를 제공하십시오. 또한 요소가 iframe/frame 안에 있는지 여부를 알려줍니다. + 이미 시도한 코드를 보여주세요. – Andersson
정확하게 사용하는 'XPath'를 지정하십시오. – Andersson
'wait.until (ExpectedConditions.visibilityOfElementLocated (by));'이 true 일 때'WebElement'를 반환합니다. 그래서 찾을 필요가 없습니다. 같은 요소 다시 .. 마지막 줄을 제거하십시오.'driver.findElement (by) .click();'와 단지 ..'wait.until (ExpectedConditions.visibilityOfElementLocated (by)). 클릭();' –