Selenium 在 -browserSessionReuse 模式下启动新浏览器

2024-01-11

我正在尝试 -browserSessionReuse Selenium 模式来加速我的测试,但我注意到了一个奇怪的行为。

这种模式的目的是避免在测试之间浪费时间打开浏览器,这就是它的工作原理。但并非总是如此,如果我连续运行测试,它们就会在同一个浏览器中运行,这是正确的。但是,如果每次测试运行之间经过几分钟,它会忘记它已经打开了一个浏览器,并打开一个新的浏览器。

我想丢弃“旧”浏览器会超时,但我不明白为什么。有什么办法可以避免这个问题吗?

(使用 Selenium1 和 Selenium2 进行测试)

提前致谢

Victor


回答我自己的问题。

Selenium 以 -browserSessionReuse 模式缓存会话,以便在以下测试中再次重用它,但它们在 BrowserSessionFactory 类中具有最大空闲会话过期时间:

private static final long DEFAULT_CLEANUP_INTERVAL = 300000; // 5 minutes.
private static final long DEFAULT_MAX_IDLE_SESSION_TIME = 600000; // 10 minutes

构造函数接收一个参数来进行清理,默认情况下为 TRUE。

public BrowserSessionFactory(BrowserLauncherFactory blf) {
        this(blf, DEFAULT_CLEANUP_INTERVAL, DEFAULT_MAX_IDLE_SESSION_TIME, true);
    }

AFAIK 无法使用 Selenium 参数更改它,唯一的方法是修改 Selenium 源代码并再次编译。所以,这就是我正在做的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Selenium 在 -browserSessionReuse 模式下启动新浏览器 的相关文章

随机推荐

  • Google Cloud HTTP 平衡器和 gzip

    当我使用 Google Cloud Network Load Balancer 时 所有 HTTP gzip 连接都保持不变 但是当使用 HTTP S 负载均衡器时 最终用户无法获得 gzip 压缩的内容 我在虚拟机上使用 nginx 使用
  • 读取 XML 文档时如何使用 XComment?

    我正在使用以下行读取 XML 文档 该文档可能有也可能没有一些用 括起来的注释 靠近我的 XML 文件的顶部 XDocument xe1 XDocument Load filepath 如何读取评论并将其存储为字符串 我正在 MS Visu
  • 调试前运行批处理脚本

    我想每次在启动程序进行调试之前运行批处理脚本 对于构建事件 此类功能是使用预构建事件 构建后事件来实现的 对于实际调试 我找不到任何预调试 调试后事件 如何实现这个场景呢 我正在使用 VS2008 net Framework 3 5 C 应
  • Bootstrap 4:隐藏卡片文本中的溢出

    我有一张 bootstrap 4 卡 我想在其中隐藏字幕的溢出 并显示 我怎样才能实现这个目标 如果可能的话使用纯引导代码 div class card block p 1 p class card title Test object p
  • 解释 R Taply 描述

    我理解tapply 在R中的作用 但是 我无法从文档中解析它的描述 Apply a Function Over a Ragged Array Description Apply a function to each cell of a ra
  • 为什么括号中的字符串不只用该字符串创建一个元组? [复制]

    这个问题在这里已经有答案了 我在使用 Python 线程和在参数中发送字符串时遇到问题 def processLine line print hello return dRecieved connFile readline processT
  • bootstrap 导航栏可折叠无法使其工作

    我正在开发一个 Angularjs 应用程序 我想使其成为多平台 因此我正在尝试使用 Bootsrap 我找到了一个我想要遵循的模板 https blackrockdigital github io startbootstrap busin
  • Windows XP 上的 XamlParseException

    我有一个 WPF 应用程序 它在 vista 7 上运行得很好 但在 Windows XP 上它会抛出 System Windows Markup XamlParse 错误 这非常令人沮丧 因为我的应用程序中有很多控件 但我不这样做不知道是
  • 线程安全的多文件写入

    我有一个守护进程 它接受套接字连接并读取或写入一组动态文件 具体取决于连接的性质 因为我的守护进程是多线程的 所以存在同一个文件可能被多个线程写入的可能性 因为我的文件列表是动态的而不是固定的 所以我不确定如何防止一个线程碰撞另一个线程 出
  • 在多个 return 语句的情况下,使用 `std::move` 返回是否明智?

    我知道返回通常不是一个好主意std move i e bigObject foo bigObject result return std move result 而不是简单地 bigObject foo bigObject result r
  • 列数与计数器列性能

    我想知道获取特定列族中的列数的最佳方法是什么 我可以直接获取列数 但我不确定这是否是有效的解决方案 另一方面 我可以维护另一个列族 其中包含一个包含列数的计数器列 您有遇到类似问题的经验吗 http wiki apache org cass
  • Fortran函数解释

    我在 Fortran 中有这个函数 我正在尝试用 C 重新编码它 C C FUNCTION POLY C FUNCTION POLY N A X DIMENSION A N C POLY 0 L N DO 1 K 1 N POLY POLY
  • java.util.MissingResourceException:找不到基本名称消息的包,区域设置 en_US

    我是 JSF 的新手 正在尝试这段代码 这是我的 faces config xml
  • 如何动态更新Nifi中的variable.registry.properties?

    变量注册表属性是 Nifi 添加的一项功能 旨在促进软件开发生命周期 这意味着您可以在单独的开发环境中开发流程 并利用 nifi variable registry properties 属性中指定的自定义属性文件以及表达式语言来使用处理器
  • 如何对过滤后的 html 表求和?

    我有一个 HTML 表 我可以使用 jquery 过滤它 在表格的底部 我想要一个 总计 行 它将显示的所有值相加 总计 行中显示的总和应该是显示的所有行的总和 即不考虑隐藏行 我尝试添加一个条件 例如使求和取决于行的显示样式 但这没有成功
  • 为什么当 args 是序列时 subprocess.Popen 不起作用?

    当 args 参数作为序列给出时 我遇到了 subprocess Popen 问题 例如 import subprocess maildir home support Maildir 这有效 它打印 home support Maildir
  • 使用“optparse”模拟 Python 脚本的命令行参数?

    我想使用的 Python 脚本 称为snakefood http furius ca snakefood doc snakefood doc html 通常从命令行运行并采用命令行参数 例如 sfood path to my project
  • 如何指定 unicode 字符范围

    如何指定 Unicode 字符范围 空格 到 u00D7FF 我有一个正则表达式 例如r u0020 u00D7FF 并且它不会编译说这是一个糟糕的范围 我是 Unicode 正则表达式的新手 所以以前没有遇到过这个问题 有没有办法让这个编
  • swift 为 NSStream 创建字节缓冲区持有者

    in the Ray Wenderlich 套接字教程 http www raywenderlich com 3932 networking tutorial for ios how to create a socket based iph
  • Selenium 在 -browserSessionReuse 模式下启动新浏览器

    我正在尝试 browserSessionReuse Selenium 模式来加速我的测试 但我注意到了一个奇怪的行为 这种模式的目的是避免在测试之间浪费时间打开浏览器 这就是它的工作原理 但并非总是如此 如果我连续运行测试 它们就会在同一个