gpt4 book ai didi

java - 如何使用 Java 中断 Selenium 线程

转载 作者:行者123 更新时间:2023-12-01 12:13:24 25 4
gpt4 key购买 nike

我正在尝试为我的 Selenium 测试设置页面刷新超时。我想做的是:

如果 selenium 在几秒内无法在页面上找到Element,findElement 操作将停止并刷新页面。

所以我尝试使用Java中的多线程来执行此操作:

  • 一个线程用于计算超时。
  • 其他线程(主线程)将用于执行该操作。

问题是:我无法中断 findElement 操作线程。这些是我在尝试执行测试时看到的线程列表:

  • 主题:附加监听器
  • 主题:最终确定
  • 主题:信号调度程序
  • 线程:刷新超时线程
  • 线程:线程 6
  • 主题:将 session f7fea321-0acd-4df3-904d-52e32decb965 上的 findElements 转发到远程
  • 线程:线程 7
  • 主题:主题 5

线程:main 实际上更改为线程:将 session f7fea321-0acd-4df3-904d-52e32decb965 上的 findElements 转发到远程。我将此线程称为“findElement 线程”以澄清此问题。

当我尝试中断“findElement 线程”时,findElement 操作仍在运行,没有任何中断。我尝试中断另一个线程(线程:Thread-5),但它将删除与当前网络驱动程序的连接,并且测试将失败。我不知道我是否做错了什么,是不是应该中断正确的线程?

感谢您阅读本文。任何建议将非常感激。

最佳答案

经过调查,我发现这是不可能的:

当我们使用java调用web-driver来执行selenium操作时,该操作将转移到web-driver来执行,此时我们将无法再操作该操作,更不用说它所使用的线程了执行此操作,因为从此时开始,Web 驱动程序控制执行而不是 Java。

关于java - 如何使用 Java 中断 Selenium 线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27145816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com