Selenium:获取 chrome 时未正确关闭

2023-12-10

当我在 selenium 框架中重新打开 chrome 浏览器时,收到 chrome 未正确关闭的错误消息。

在框架中,我使用以下代码在每个测试用例的开头打开浏览器实例

if (browserType.equalsIgnoreCase("Chrome")) {
            try {                               
                System.setProperty("webdriver.chrome.driver", curProj+"\\drivers\\chromedriver.exe");
                ChromeOptions options = new ChromeOptions();
                options.setExperimentalOption("useAutomationExtension", false);
                options.addArguments("disable-infobars");
                //options.addArguments("user-data-dir=C:/Users/xw20/AppData/Local/Google/Chrome/User Data");
                options.addArguments(chromeProfile);
                webdriver = new ChromeDriver(options);
                logger.info("getWebDriver - Setting webdriver.chrome.driver system property as: " + System.getProperty("webdriver.chrome.driver"));
            }
            catch(IllegalStateException e) {
                logger.error("The path to the driver executable must be set by the webdriver.chrome.driver system property. ",e.fillInStackTrace());
                throw new IllegalStateException("The path to the driver executable must be set by the webdriver.chrome.driver system property.");
            }

并最后使用以下代码关闭

driver.close();
driver.quit();

但是当我打开浏览器进行第二个测试用例时,我收到“chrome 没有正确关闭”弹出消息。

我尝试更新 chrome 配置文件的首选项文件中的以下内容,但没有成功

exit_type:Crashed
exited_cleanly:true

配置 :

铬版本:版本 64.0.3282.186(官方版本)(32 位)

硒版本: 3.11.0


根据您的代码,很难分析错误背后的原因chrome 没有正确关闭不知道你的框架结构。也许有关如何的更多细节代码块被调用(即main() or TestNG)会对我们有所帮助。

话虽如此,似乎还有一些因素需要考虑,如下:

  • 如果您正在使用现有的Chrome 个人资料通过用户数据目录理想情况下你应该避免开关设置实验选项 and 添加参数用于定制,因为这些应该在各自的范围内设置Chrome 个人资料.
  • 当您使用现有的Chrome 个人资料通过用户数据目录根据文档ChromeDriver - 适用于 Chrome 的 WebDriver the path应该指出个人资料目录如下 :

    options.add_argument("user-data-dir=C:/Users/xw20/AppData/Local/Google/Chrome/User Data/Profile 2")
    
  • 您可以在这里找到详细的讨论如何通过 Python 打开 Chrome 配置文件

  • 避免使用driver.close();并始终调用driver.quit() within tearDown(){}方法关闭并销毁网络驱动程序 and 网页客户端优雅地实例。
  • 您可以在这里找到详细的讨论PhantomJS Web 驱动程序保留在内存中
  • Upgrade JDK到最近的水平JDK 8u162.
  • Upgrade Selenium到目前的水平版本3.11.0.
  • Upgrade Chrome驱动程序至当前Chrome驱动程序v2.37 level.
  • Upgrade Chrome版本到当前版本Chrome v65.x levels.
  • Clean your 项目工作区通过你的IDE and Rebuild您的项目仅具有所需的依赖项。
  • Use CCleaner工具可以清除执行之前和之后的所有操作系统杂务测试套件.
  • 如果你的基地网页客户端版本太旧,然后通过卸载雷沃卸载程序并安装最新的 GA 和发布版本网页客户端.
  • 执行你的@Test.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Selenium:获取 chrome 时未正确关闭 的相关文章

随机推荐

  • CSS规则选择不包含元素的元素

    我有一堆看起来像的元素 div div class head div div class footer div div 除了其中一些没有页脚元素 只有一个头部 我想给没有页脚的元素一个底部边框 我希望有类似的事情 hi hasno foot
  • 从地理编码对象获取纬度

    我想从地理编码器返回的结果对象中获取纬度和经度
  • 如何检测用户是否单击了“不允许访问摄像头”

    我正在使用一个UIImagePicker向用户展示相机来拍摄将在应用程序中使用的照片 我的问题是 用户第一次打开图像选择器时 会出现一条提示 我的应用程序想要访问您的相机 有两个选项 不允许和确定 我的要求是 当用户单击 不允许 时 图像选
  • 我可以将 Excel 组合框设置为默认值吗?

    我的组合框 名为ddDatabase 可以具有两个值之一 这两个值是从单独工作表中的表中提取的 但是 当我打开 Excel 文件时 这两个值都没有被选择 相反 组合框显示为空 有什么方法可以明确地将特定值设置为默认值吗 经过一些进一步的测试
  • 通过带分隔符的字符串访问多维数组

    假设我有一个像这样的多维数组 我想通过传递像这样的字符串来访问数组元素 test1 test2 test3 到一个函数 该函数依次调用数组元素 我可以用eval 将字符串替换为 调用 array test2 test3 但我想知道是否有一种
  • 数据库设计 - 为用户存储积分的方法

    只是寻找一些有关如何为此进行数据库设计的建议 在我的网站上 用户可以通过执行不同的活动获得积分 目前 我有 3 项奖励积分的活动 但设计必须具有可扩展性 我也可以添加其他奖励积分的活动 所以今天 用户获得积分 1 当他添加一个新商店时 他获
  • 如何使用泛型 Go 实例化类型参数的非零指针?

    现在类型参数可用golang go master 我决定尝试一下 看来我遇到了在中找不到的限制类型 参数 提案 或者我一定错过了 我想编写一个函数 它返回带有接口类型约束的泛型类型值的切片 如果传递的类型是带有指针接收器的实现 我们如何实例
  • 如何取消从 Git Bash 克隆 Git 存储库?

    我目前正在使用 Git Bash 克隆一个拥有超过 100 000 次提交的大型存储库 克隆过程已经持续了半个多小时 还没有完成对象的接收 是否可以取消git clone来自 Git Bash 的命令 作为参考 我在 Windows 7 P
  • 在渲染 JS canvas 之前加载图像

    我正在编写一个简单的游戏来学习 JS 并且在此过程中我正在学习 HTML5 所以我需要在画布上绘制东西 这是代码 let paddle new Paddle GAME WIDTH GAME HEIGHT new InputHandler p
  • 应用程序窗口预计在应用程序启动结束时有一个根视图控制器

    当我的应用程序启动时出现上述错误 以下代码来自我的 AppDelegate h 文件 import
  • 如何导入数据文件进行UFT API测试?

    我正在开发一个项目 需要在运行时动态导入测试数据并运行与测试数据对应的API测试 我尝试使用 XMLload 直接从 xml 请求加载 这似乎运作良好 但就像 GUI 测试一样 我们导入测试数据 我希望 API 测试也一样 我可以动态地从外
  • SVG - 从中​​心重复缩放路径(脉动)

    我有一个中心点为 100 100 的 svg 图形
  • 从类或实例设置属性时的查找过程是什么?

    Python 简而言之描述了从类获取属性时的查找过程 例如cls name以及从实例获取属性时的查找过程 例如obj name 但我不确定何时设置属性 设置属性 请注意 属性查找步骤仅按照刚刚描述的方式发生 当您引用属性时 而不是当您绑定属
  • 使用vtd-xml解析xml文件

    如何在 java 或 C 中使用 vtd xml 解析如下所示的 xml 文件
  • IE11 预览版中未定义“WebForm_DoPostBackWithOptions”

    IE11来了 我刚刚安装了开发者预览版 但是 如果我运行一些 Web 应用程序并收到错误WebForm DoPostBackWithOptions未定义 当我玩自动回发时弹出错误DropDownList 而且之前IE10好像也有类似的问题
  • Postgres 自然排序依据

    我在 postgres 中的一列中遇到了排序问题 其中包含诸如版本之类的值 版本因字符而异 其值如下 无序 1 2 1 3 1 10 1 1 9 我如何按自然顺序排序 以便当我发布时SELECT version FROM TABLE A O
  • Oracle 10g 中的聚合字符串连接[重复]

    这个问题在这里已经有答案了 我看到上一个问题 其中表格包含 否 和 名称 列 以及其他与数字列分组的问题 但无法实现为我的案例提供的答案 我需要做同样的事情 但是使用非数字分组 源表是 tbl1 包含以下列 POD Name North R
  • iOS 7.0 未找到代码签名身份

    证书有效 xcode 5 iOS 7 代码签名错误 未找到代码签名身份 没有代码签名 匹配的身份 即证书和私钥对 在构建设置中指定的配置文件 iOS Team 找到配置文件 CodeSign 错误 代码签名是 SDK iOS 7 0 中的产
  • 在没有 stdarg 的情况下访问可变参数函数参数

    有没有办法使用指针访问函数中的可变参数 我尝试做类似的事情 void test int p int firstarg p 1 但这行不通 va start 和 va arg 如何访问这些参数 没有portable这样做的方法 并且没有充分的
  • Selenium:获取 chrome 时未正确关闭

    当我在 selenium 框架中重新打开 chrome 浏览器时 收到 chrome 未正确关闭的错误消息 在框架中 我使用以下代码在每个测试用例的开头打开浏览器实例 if browserType equalsIgnoreCase Chro