2011-08-11 5 views
2

동적 인 div가 있습니다. 이드는 "로고"이며 실제 사용하는 URL에 따라 다른 로고가 포함되어 있습니다. 예를 들어 : -셀레늄 : 동적 div의 내용 일치

<div id="header-container"> 
    <div id="header"> 
    <a href="/demo/"><div id="logo"></div></a> 

header.css 파일 상세 로고 사업부를 포함

#logo { 
width: 315px; 
height: 88px; 
background: url('/media/images/qt/Butto_qt.png') no-repeat -1339px 0px; 
position: absolute; 
left: 0; 
} 

내가 알아 내기 위해 원하는 것을,

"//div[@id='header-container']/div[@id='header']/a/div[@id='logo']" . 

그러나 XPath를 클릭 호출 할 수 있습니다 URL에 "Butto_qt.png"가 포함되어 있는지 어떻게 확인할 수 있습니까? 가능하다면 어떻게해야합니까?

답변

1

당신은 자바 스크립트의 비트를 사용하여이 작업을 수행 할 수 있습니다

window.getComputedStyle(document.getElementById('hlogo').childNodes[1]).backgroundImage 

현대적인 브라우저에서 작동해야한다고.

셀렌을 사용하면 assertEval 메서드를 사용합니다. 예를 들어 PHPUnit Selenium 확장 프로그램을 사용하는 경우 :

$this->assertEval("window.getComputedStyle(document.getElementById('hlogo').childNodes[1]).backgroundImage",'Butto_qt.png'); 
+0

Thanks Austin !! 나는 이것을 시도 할 것이다. –