如何在Quamotion中设置等待超时?

时间:2018-02-20 16:49:46

标签: ios testing mobile webdriver

我正在使用Quamotion来测试iOS应用程序。我的测试时常失败,因为看起来Find-Element无法在屏幕上找到该元素。

当我切换到新窗口并且UI需要一些时间来加载时,似乎会发生这种情况。

有没有办法让Find-Element等待用户界面完全加载?

1 个答案:

答案 0 :(得分:1)

您可以使用Set-Timeout设置隐式等待超时。当您使用Find-Element查找元素(例如Find-Element -xpath "//*[@name='Login']")时,Quamotion WebDriver将尝试查找满足Set-Timeout指定量的XPath表达式的元素。

您应该检查Find-Element是否返回实际的元素ID。

如果您没有获得元素ID,则会触发超时并且找不到该元素。尝试增加超时。

如果您确实获得了元素ID,则会找到一个元素,但是:

  • 这不是你期望的元素。如果您在Find-Element之后几乎立即执行Click-Element并且上一页的UI结构仍在内存中,则会发生这种情况;
  • 另一个元素与您的XPath表达式匹配。您可以使用Get-ElementRectangle获取元素的矩形,并确定它是否是您期望的元素
  • 元素已在内存中创建,但尚未在屏幕上绘制。您可以使用Is-Displayed来确定您的元素是否已被绘制。
相关问题