不可预测的 Selenium WebDriver 行为
Unpredictable Selenium WebDriver Behavior
我有几个 selenium 测试 运行。今天,当我在研究它们时,有几个一直在失败。他们以前是路过的。我在代码中进一步调查了这个问题,发现一切都已到位。我运行他们又在一起了;他们失败了。
我这样做了一会儿,到处调整代码,试图找出它们失败的原因。然后,出于沮丧,我通过单击它说找不到的元素(显然,它就在那里,我的代码正在寻找正确的元素)来恢复我的更改和 "helped" 测试。测试通过了。然后我重新 运行 测试,但没有帮助它。所有测试都通过了。我以前 运行 遇到过这种情况,通常关闭 Visual Studio 并重新开始似乎可以解决问题。
这种行为不一致,有点令人沮丧。我怎样才能避免这种情况?
测试失败的原因有数千种。特别是 UI 测试是最不稳定的一种测试。但是,我不确定它与关闭和重新打开 visual studio 有什么关系。即使那是原因,您也可能想调查根本原因或它与测试的关系。我个人使用 visual studio 而从不 运行 进入这种情况。
既然你提到了,元素就在那里,我认为这是元素加载问题。在这种情况下,您可能会发现 explicit 等待很有帮助。 Ajax调用和刷新DOM的部分是UI测试的杀手锏。在不了解任何细节或查看测试代码的情况下,我建议您查找具有基本显式等待的元素或提供您遇到问题的测试代码以获得进一步帮助。
我有几个 selenium 测试 运行。今天,当我在研究它们时,有几个一直在失败。他们以前是路过的。我在代码中进一步调查了这个问题,发现一切都已到位。我运行他们又在一起了;他们失败了。
我这样做了一会儿,到处调整代码,试图找出它们失败的原因。然后,出于沮丧,我通过单击它说找不到的元素(显然,它就在那里,我的代码正在寻找正确的元素)来恢复我的更改和 "helped" 测试。测试通过了。然后我重新 运行 测试,但没有帮助它。所有测试都通过了。我以前 运行 遇到过这种情况,通常关闭 Visual Studio 并重新开始似乎可以解决问题。
这种行为不一致,有点令人沮丧。我怎样才能避免这种情况?
测试失败的原因有数千种。特别是 UI 测试是最不稳定的一种测试。但是,我不确定它与关闭和重新打开 visual studio 有什么关系。即使那是原因,您也可能想调查根本原因或它与测试的关系。我个人使用 visual studio 而从不 运行 进入这种情况。 既然你提到了,元素就在那里,我认为这是元素加载问题。在这种情况下,您可能会发现 explicit 等待很有帮助。 Ajax调用和刷新DOM的部分是UI测试的杀手锏。在不了解任何细节或查看测试代码的情况下,我建议您查找具有基本显式等待的元素或提供您遇到问题的测试代码以获得进一步帮助。