如何使测试用例在Selenium支持的Webdriver中保持稳定

如何使测试用例在Selenium支持的Webdriver中保持稳定,selenium,selenium-webdriver,Selenium,Selenium Webdriver,有没有办法使测试用例更稳定?有时一个测试用例失败(并且它显示“等待错误超时”),但当我在一段时间后再次运行同一个测试用例时,它不会引发异常或错误。是,: 显式等待。 显式等待是您定义的等待 在代码中继续之前发生的某些情况。这个 最糟糕的情况是Thread.sleep(),它将条件设置为 等待的确切时间。提供了一些方便的方法 这将帮助您编写只在需要时等待的代码。 WebDriverWait与ExpectedCondition的结合是实现此目的的一种方法 可以完成 这是“视情况而定”你的测试一开始是

有没有办法使测试用例更稳定?有时一个测试用例失败(并且它显示“等待错误超时”),但当我在一段时间后再次运行同一个测试用例时,它不会引发异常或错误。

是,:

显式等待。 显式等待是您定义的等待 在代码中继续之前发生的某些情况。这个 最糟糕的情况是Thread.sleep(),它将条件设置为 等待的确切时间。提供了一些方便的方法 这将帮助您编写只在需要时等待的代码。 WebDriverWait与ExpectedCondition的结合是实现此目的的一种方法 可以完成


这是“视情况而定”你的测试一开始是否100%可靠?我的意思是在100分中他们总是通过?嗨Artbristol,事实上,我正在准备一个项目的POC,我正在Webdriver-backed selenium中进行该项目。因此,就我的情况而言,我不可能运行100次,因为我有大量的测试用例。如果您正在进行POC,那么我将跳过selenium-backed Webdriver,直接进入Webdriver。我几乎完成了POC,项目完成后,将切换到Webdriver。但是,除了睡眠之外,还有其他选择,因为Webdriver中也会出现同样的问题。嗨,Misha,实际上我正在使用Webdriver支持的Selenium准备POC(概念验证),其中是否有任何命令可以使测试用例更加可靠和稳定?因为这会逐渐耗尽我整个项目(POC)的工作。是的,有,我给了您代码示例和文档的url。最粗鲁的替代方法是在打开任何页面后立即使用您选择的语言进行
sleep(10)
函数调用。这样,在使用它们之前,您将给每页10秒钟的时间来加载您需要的所有元素。这是缓慢的,肮脏的和不可靠的,但是最快的修复您的POC。