2010-06-03 6 views
1

div가있는 슬라이드 쇼가 있습니다. (http://film.robinhoodtax.org/issues/education)Selenium에서 div 콘텐츠가 시간이 지남에 따라 변경되었는지 확인

나는 그것을 테스트하기 위해 셀레늄을 사용하고있다. 지금까지 슬라이드 쇼가 실제로 작동하는지 확인하기 위해 아래 HTML/Selenium 스크립트를 사용했습니다. 하지만 내 assertEval이 실패했습니다.

슬라이드 쇼를 올바르게 감지하고 움직이는 지 어떻게 확인합니까?

HTML을 저장하고 기다렸다가 다시 시도했지만 작동하지 않는 것으로 접근했습니다. 테스트중인 사이트를 보면

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head profile="http://selenium-ide.openqa.org/profiles/test-case"> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<link rel="selenium.base" href="" /> 
<title>New Test</title> 
</head> 
<body> 
<table cellpadding="1" cellspacing="1" border="1"> 
<thead> 
<tr><td rowspan="1" colspan="3">New Test</td></tr> 
</thead><tbody> 
<tr> 
    <td>open</td> 
    <td>/issues/education</td> 
    <td></td> 
</tr> 
<tr> 
    <td>waitForPageToLoad</td> 
    <td></td> 
    <td></td> 
</tr> 
<tr> 
    <td>assertElementPresent</td> 
    <td>css=div[id='views-nivo-slider-ImagesGallery-block_1']</td> 
    <td></td> 
</tr> 
<tr> 
    <td>storeHtmlSource</td> 
    <td>css=div[id='views-nivo-slider-ImagesGallery-block_1']</td> 
    <td>first</td> 
</tr> 
<tr> 
    <td>pause</td> 
    <td>3000</td> 
    <td></td> 
</tr> 
<tr> 
    <td>storeHtmlSource</td> 
    <td>css=div[id='views-nivo-slider-ImagesGallery-block_1']</td> 
    <td>second</td> 
</tr> 
<tr> 
    <td>assertEval</td> 
    <td>${first} == ${second}</td> 
    <td>second</td> 
</tr> 

</tbody></table> 
</body> 
</html> 

답변

2

, 다음을 사용하여 슬라이드 쇼의 활성 페이지를 확인할 수 있습니다 다음

verifyText | css=a.nivo-control.active | 0 
waitForText | css=a.nivo-control.active | 1 
waitForText | css=a.nivo-control.active | 2 
waitForText | css=a.nivo-control.active | 3 
waitForText | css=a.nivo-control.active | 4 
waitForText | css=a.nivo-control.active | 5 
waitForText | css=a.nivo-control.active | 6 
waitForText | css=a.nivo-control.active | 7 
waitForText | css=a.nivo-control.active | 0 

이 가능한 각 슬라이드를 통해 활성 '페이지'변화 할 때까지 대기 그런 다음 첫 번째 슬라이드로 돌아가는지 확인하십시오. 슬라이드를 변경하는 동안 슬라이드가 잠길 때까지 기다리는 것만 큼 일시 중지보다 좋습니다.

+0

이것은 내 문제를 환상적으로 해결합니다. 고맙습니다! –

+0

반갑습니다. 나는 이미지가 바뀌는 지 확인하는 방법에 대해 살펴 보았다.'storeEval | this.findEffectiveStyleProperty (this.browserbot.findElement ("id = views-nivo-slider-ImagesGallery-block_1"), "backgroundImage") | backgroundImage'라고 표시하지만 확인하려면 전환이 완료 될 때까지 기다려야합니다. –

+0

전환의 경우 'css = .nivo-slice'의 불투명도가 1 미만이 될 때까지 기다린 다음 불투명도가 1이 될 때까지 기다릴 수 있습니다. 전환이 시작되고 종료되었음을 나타냅니다. –

관련 문제