Selenium:当页面可用时如何自动刷新

时间:2016-05-30 14:54:24

标签: selenium selenium-ide

我创建了一个小硒试验,以便在它们被释放的确切时刻在各个地点购买一双鞋子,我希望我的测试能够在整个页面上翻新,直到鞋子可用,所以我不应该让电脑开始所有的测试。这可能吗?

提前致谢

这是我的代码:

<tr>
<td>open</td>
<td> LINK SHOE</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>css=div.opt-sel</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[@id='content']/div[3]/div[2]/div[2]/div/div[2]/div[2]/div/ul/li[6]/div/</td>
<td></td>
</tr>
</tbody></table>
</body> 
</html>

2 个答案:

答案 0 :(得分:1)

我们的想法是使用类似的代码:

// your first condition of opening a page of shoe
while("add to chart is not available") {
  driver.refresh(); //this would keep on refreshing unconditionally unless your item is found
  wait(2000); // would suggest adding some wait()
}
// once add to chart is available, it would come out of the loop
// execute further your 2nd and 3rd command

答案 1 :(得分:1)

有可能。您可以使用storeElementPresent命令检测页面元素是否已存在,从而实现此目的。它返回布尔值(true / false),可以在gotoIf命令的条件表达式中使用。见下面的例子......

命令:storeElementPresent

目标:<locator-for-shoes>

价值:shoes

命令:gotoIf

目标:${shoes}==false

价值:RefreshPage

命令:label

目标:RefreshPage

值:

命令:refreshAndWait

目标:

值:

命令:gotoIf

目标:${shoes}==false

价值:RefreshPage