java - Selenium - Java - ChromeDriver:打开空白“数据”;在某些情况下,在打开另一个运行实际测试的 chrome 窗口之前?
问题描述
所以我是一名实习生,负责用 Selenium 开发各种测试用例。但是,在大多数情况下,我开发的东西是有效的:
对于我的一些测试用例,一个空白的“数据”;窗口打开,然后它会打开另一个窗口,运行我的实际测试用例。它并没有真正阻碍我的测试用例的运行,但它打开的所有额外窗口都会让人讨厌。
我已经彻底搜索了stackoverflow以及其他论坛,有些人通过更新chromedriver找到了解决方案(我做过但没用),其他人在这里发布的问题是关于他们的实际测试用例窗口是空白数据; 而不是我遇到的问题。
相关信息:
- 我正在使用 JUnit 并在我的 @Before 注释中实例化 chrome 驱动程序对象,因为我在每个案例之后关闭驱动程序(即使它们在同一个测试类中也能够独立运行每个案例)。
这个额外的空白数据;窗口似乎只有在我完成上述操作后才会出现。
- 我一开始在每个测试用例中做一个 driver.get(URL)
如果有人有解决方案,请他们发布并解释为什么会这样,因为我不仅想要解决方案,还想了解其背后的根本原因。
提前致谢!
解决方案
尝试详细记录以至少查看它是否与打开两个窗口的 chromedriver 实例相同。
System.setProperty("webdriver.chrome.verboseLogging", "true");
如果是单独的 chromedriver 实例,您将在 Windows 上的任务管理器中看到两个 chromedriver.exe 实例,在 Mac 上的 Activity Monitor 中,在 chromedriver 中看到两个实例。然后,您可以将范围缩小到您的一个测试用例可能实际上没有运行,或者立即失败。
推荐阅读
- c - 为什么我的 while 循环 (z==0) 在我将其设置为 z==0 一次后会运行多次?
- python - Python3:测试重复的用户输入
- shiny - 返回 DTEdit 表?
- html - 高度受限于屏幕尺寸的响应式内容
- python - python - 按模式在一列中为fillna分组多列
- java - Possible to run two ContentHandlers for a single parse in Apache-Tika?
- java - 在Activity之间切换时如何避免白屏
- c++ - C++:如何将 std::vector 操作转换为 Eigen::VectorXf?
- javascript - 用于 sql 异常的正则表达式以查找约束名称
- azure - mcrosoft b2c 注册中的自定义 HTML 页面