В Selenium со временем изменилось содержание divs - PullRequest
1 голос
/ 03 июня 2010

У меня есть div, который содержит слайд-шоу. (http://film.robinhoodtax.org/issues/education)

Я использую Selenium для тестирования. До сих пор я использовал скрипт 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>

1 Ответ

2 голосов
/ 03 июня 2010

Глядя на тестируемый сайт, вы можете проверить активную страницу слайд-шоу, используя следующее:

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

Это подождет, пока активная «страница» изменится на каждом доступном слайде, а затем проверит, вернется ли он к первому слайду. Это лучше, чем пауза, так как таким образом вы ждете столько времени, сколько потребуется для смены слайда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...