当前位置: 首页 > 知识库问答 >
问题:

为什么HtmlUnitDriver随机失败(FirefoxDriver/ChromeDriver工作)?

郭通
2023-03-14

我有一个2分钟的Selenium webdriver脚本。它与FirefoxDriver和ChromeDriver配合使用效果非常好。真正的浏览器永远不会失败。

但是当我用HTMLUnit驱动程序运行时,我发现它随机失败。抛出异常,如找不到元素。

我尝试过的解决方案:

  1. 添加线程。睡眠至6000毫秒,但仍不能每次跑步

配置和版本:

硒-java: 2.53.0

selenium服务器:2.53.0

HTMLUnit驱动程序

TestNG:6.8.8

共有1个答案

劳宇
2023-03-14

添加WebDriver抛出的元素的显式等待,但找不到元素除外,如下所示-

WebDriverWait wait = new WeBDriverWait(driver, 10);
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("")));

此外,请确保已将以下依赖项添加到项目中-

<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>htmlunit-driver</artifactId>
<version>2.21</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-support</artifactId>
<version>2.53.0</version>
</dependency>
 类似资料:
  • 问题内容: 我建立了一个简单的测试,它可以无限循环地创建和删除文件(名称不变)。该测试确实运行了几秒钟(有时超过77,000次迭代!),然后由于以下异常而失败: 这是测试逻辑: 这怎么可能?删除呼叫不会失败。它会说明一切。因此删除总是成功但失败。这就是MSDN关于Win32 API函数的说法: DeleteFile函数在关闭时将文件标记为要删除。因此,在关闭文件的最后一个句柄之前,不会发生文件删除

  • 我有一个下拉菜单,其中有文本“我的菜单”。不幸的是,相同的下拉列表被用于另一个目的,文本为“My Second Menu”。我需要点击这个“我的菜单”下拉,它看起来如下所示。 目前,我正在使用XPath来捕获它,如下所示。 每当我单独运行它时,它的测试场景都很好地通过。但是当整个测试套件运行时,这个测试随机失败。在无头模式下运行时也是如此。对于选择要单击的元素的方式,我可以做些什么吗?这能帮助测试

  • 我有一个单节点库伯内特斯集群,它显示10Gi,3个CPU可用(总共16 Gi,4CPU),用于在集群启动后运行pod。我正在尝试两种不同的场景: 在这种情况下,应用程序完美地安装在相应的吊舱中,并按预期工作良好。 在第二种情况下,应用程序会出现在相应的Pod中,但在这些Pod上加载一些负载后会随机失败,即有时Pod-A会出现故障,有时Pod-2或Pod-3会出现故障。在任何时候,我都无法同时运行所

  • 我尝试为一个简单的spring引导控制器创建第一个测试,但得到的是。在浏览器中,代码是工作的,但测试失败。我的应用程序使用spring-安全。请帮助我解决问题,并理解我的错误。谢谢你。 这是控制器: 这是个考验。 这是结果日志: mockHttpServletRequest:HTTP方法=GET请求URI=/get_all_items参数={}Headers={accept=[text/html]

  • 我从两个方面建议了一些方法,一个是使用spring AOP支持,另一个是()建议所有带有注释的方法。在我的单元测试中,我试图通过破坏方法契约来强制抛出错误,但有时验证是到位的(上面提到的后处理器强加的建议),有时不起作用。有人经历过类似的事情吗。 下面是我正在尝试做的事情的一个小片段: 注释(可记录代码) 使用@Validated注释注释的接口(这里有相关信息的链接)。 实现此接口的基类:公共抽象

  • 将word2vec模型写入S3,如下所示: 我通常没有问题,所以没有AWS凭据问题,但我随机得到以下错误。 30年1月17日20:35:21警告配置实用程序:无法使用正确的权限创建临时目录:/mnt2/s3 java。nio。文件AccessDeniedException:/mnt2在sun。nio。fs。UnixexException。sun上的translateToIOException(Un