2009-12-04 3 views
0

xpath를 사용하여 웹 페이지에서 요소를 검색하고 있습니다. xpath는 정확하고, 수동으로 페이지의 아무 곳이나 클릭을 수동으로 수행하는 경우에만 요소를 찾을 수 있습니다. 문이 실행되기 전에 이렇게하지 않으면 요소를 찾지 못합니다.페이지에서 수동 클릭이 발생할 때까지 요소가 페이지에서 인식되지 않습니다.

나는 페이지에 초점을 수 있도록 다양한 시도를 시도 : 아직 요소를 찾을 수 없습니다 이러한 기능에게 문을 수행 한 후

selenium.selectWindow(null); 
selenium.fireEvent(xpath, "focus"); 
selenium.click(element on page); 
selenium.mouseDown(); 
selenium.mouseUp(); 

을하지만 수동으로 페이지를 극대화하고있는 경우 페이지의 아무 곳이나 클릭 , 다음 문을 실행하면 요소가 발견됩니다. 아무도 이것으로 나를 도울 수 있습니까? 내가 요소를 찾기 위해 사용하고

문은 다음과 같습니다

selenium.isElementPresent("//div[@class='sample_class']"); 

감사합니다!

답변

3

XPath를 사용하는 대신 해당 항목에 CSS 선택기를 사용해보십시오.

선택자로 selenium.isElementPresent("css=div.sample_class");을 사용하십시오. Saucelabs가 그것을 아주 잘 설명했습니다. http://saucelabs.com/blog/index.php/2009/10/selenium-tip-of-the-week-start-improving-your-locators/

+0

응답 해 주셔서 감사합니다. CSS 선택기를 사용해도 동일한 문제가 발생합니다. 페이지에서 수동 클릭이 수행 된 후에 만 ​​요소를 찾을 수 있습니다. 페이지를 클릭하지 않고 isElementPresent() 메서드를 실행하면 false를 반환합니다. 수동 단계를 수행하지 않고 요소를 사용할 수있게 만드는 방법이 있습니까? – user223871

+0

페이지의 마크 업을 표시하여 거기에서 모양을 확인하고 제안 할 수 있습니까? – AutomatedTester

관련 문제