正如您在问题中提到的,如果 被测应用程序 ( *
因此, 在 两种情况 下,被测应用程序均 依赖 JavaScript 或 AJAX调用 会引发 TimeoutException 。
在第二种情况下,您同时引出implicitly_wait(2)
和webdriverwait(driver, 2, 0.5)
。
:请勿混合使用隐式和显式等待。这样做可能导致无法预测的等待时间。例如,将隐式等待设置为10秒,将显式等待设置为15秒,则可能导致20秒后发生超时。
最好的解决方案是删除的所有实例implicitly_wait(time_to_wait)
并替换webdriverwait()
为以使被测应用程序(AUT) 保持稳定的行为。
根据您的反问题,当前代码块看起来很完美。的时候,你看到的测量time used: 44.6049938202 s
是所需的时间 网页 完全和功能加载对于所需要的时间 客户端 (即 Web浏览器 来控制返回到) webdriver的 情况下,一旦 等于 。 Selenium 或作为用户,您无法控制此渲染过程。但是,为了获得更好的性能,您可以遵循以下最佳做法: