在 Selenium 中如何处理新窗口?

2024-01-05

我正在编写一个硒脚本来登录并创建新邮件,发送邮件并注销。但是当我单击“新邮件”按钮时,它会打开一个新窗口。在硒中我如何处理这个问题。我是硒的新手。请详细解释一下。


使用下面的代码,你必须使用 getWindowHandles - 我希望它有帮助,如果你在其他地方遇到困难,请告诉我 -

 @Test
        public void multipleWindows() {
            driver.get(URL+"/windows");
            driver.findElement(By.cssSelector(".example a")).click();
            Object[] allWindows = driver.getWindowHandles().toArray();
            driver.switchTo().window(allWindows[0].toString());
            Assert.assertNotEquals(driver.getTitle(), "New Window");
            driver.switchTo().window(allWindows[1].toString());
            Assert.assertEquals(driver.getTitle(), "New Window");
        }
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Selenium 中如何处理新窗口? 的相关文章

随机推荐

  • 带有 Plastic SCM 的超大型存储库

    我们正在研究 Plastic SCM 作为 Subversion 的可能替代方案 用于我们产品的版本控制 除了非常庞大的源代码库之外 我们还拥有大量的二进制资产 主要是艺术资产 还包括一些文档 AVI 等 简单说一下 svn 检查我们的 t
  • 变长系列

    我试图确定是否可以在 Excel 中编写以下计算 其中 n 是变量并且来自用户输入 n的值是正数并且等于或大于1 是否可以写一个公式而不是使用vba 2 1 2 2 2 3 2 n If n 1 then the calculation w
  • JavaFX:对单击、双击和三次单击的反应

    我正在尝试配置某些操作来响应鼠标单击次数 在我看来 单击和三次单击被检测到并应用 但双击实际上不起作用 我尝试做类似的事情 if doubleClick else if tripleClick else if singleClick 检查顺
  • 使用 CGAffineTransform 倾斜 UIImageView

    我试图倾斜一个矩形 使两个垂直边倾斜但平行 顶部和底部是水平的 我正在尝试使用 CGAffineTransform 并找到了这段代码 但我不知道要在各个部分中放入什么 imageView layer somethingMagic image
  • 如何取消自定义等待

    我读了斯蒂芬 图布的博客 https devblogs microsoft com pfxteam awaiting socket operations 关于为 SocketAsyncEventArgs 制作自定义等待 这一切都很好 但我需
  • Keyvault 身份验证(REST API)

    我对微软分散的文档有点困惑 我创建了一个应用程序 https learn microsoft com en us azure azure resource manager resource group create service prin
  • 在SOLID中,SRP和ISP有什么区别? (单一职责原则和接口隔离原则)

    如何SOLID http en wikipedia org wiki Solid object oriented design 接口隔离原则 与 单一职责原则 有何不同 维基百科SOLID 条目说 http en wikipedia org
  • UIStackView 中的多行标签

    将多行标签 换行符设置为自动换行 放入堆栈视图时 标签会立即丢失换行符并在一行中显示标签文本 为什么会发生这种情况以及如何在堆栈视图中保留多行标签 正确答案在这里 https stackoverflow com a 43110590 566
  • cocoa 再次错误 134100 - (用于打开的模型与用于创建的模型不兼容...)

    我在这里看到了这个问题 但总是 答案是模型已更改 重置模拟器 删除商店 我也收到此错误 但是 这是一个新应用程序 我没有添加 更改实体或属性 我删除了商店 重置了模拟器 但得到了相同的结果 这是商店代码 这个问题还有其他原因吗 NSMana
  • jQuery:分离并重新附加元素而不重新加载内容

    我想知道是否可以使用 jQuery 分离然后将元素 例如 div 重新附加到 DOM 而无需重新加载元素内的内容 考虑这个示例布局 div class row div class col lg 6 div class card img sr
  • 如何在执行剧本时在命令行中添加多个清单文件

    我有一本包含两种不同玩法的剧本 Sample yml name Play1 hosts Host1 tasks name Play2 hosts Host2 tasks 我需要用两个不同的主机运行这个剧本 主机1和主机2 并且这两个不同的主
  • PDO lastInsertId 不适用于事务?

    我是第一次在 MySQL 中使用 PDO 目前只是在玩它 到目前为止 当我尝试在事务中进行插入时 this gt dbh gt beginTransaction sql query ran this gt dbh gt commit ech
  • jquery滑块背景颜色

    我是网络编程新手 我正在尝试创建包含滑块的网站 我目前正在使用 jquery 来创建滑块 我试图在滑块值小于 5 时将滑块的背景颜色更改为红色 在滑块值大于 5 时将其背景颜色更改为绿色 如何实现此目的 我必须使用 CSS 来完成这个任务吗
  • 将 lib 添加到 Rails 3 中的“config.autoload_paths”不会自动加载我的模块

    我在旁边放置了一个文件名 g rbRails root lib文件夹 文件内容是这样的 module Google end 然后我添加 config autoload paths W config root lib Rails root a
  • 具有形状 (n,) 的 Sympylambdaify 数组

    我目前与 sympy 存在以下 问题 我有一个象征性的表达 比如M matrix pi a sin 1 b 我想要lambdify并传递给数值优化器 问题是优化器需要函数来输入 输出形状的 numpy 数组 n 特别是不 n 1 现在我已经
  • cmake 和使用“make -jN”的并行构建

    我正在尝试为我的源树设置一个基于 CMake 的并行构建 但是当我发出 cmake make j2 I get jobserver unavailable using j1 Add to parent make rule 作为警告 有谁知道
  • printf 如何知道 CString 字符数据的地址?

    考虑这个代码片段 struct My operator const char const return my my CStringA s aha printf s s s my another variadic function to ge
  • 如何使RecyclerView中每个项目的大小不同?

    I want to achieve something like this But here s what I get after trying 我已经将项目布局的高度设置为 WRAP CONTENT 但结果仍然相同 我应该怎么办 对于那些
  • SwiftUI 中的描边图像边框

    我正在尝试在 SwiftUI 中重新创建 Apple 的节日灯光图像 来自 Apple India 网站的屏幕截图 预期结果 这是我迄今为止所取得的成就 到目前为止我的理解 图像不是形状 所以我们不能抚摸它们的边界 但我还发现shadow
  • 在 Selenium 中如何处理新窗口?

    我正在编写一个硒脚本来登录并创建新邮件 发送邮件并注销 但是当我单击 新邮件 按钮时 它会打开一个新窗口 在硒中我如何处理这个问题 我是硒的新手 请详细解释一下 使用下面的代码 你必须使用 getWindowHandles 我希望它有帮助