selenium 窗口的切换
窗口切换需要用到一个关键词:句柄,每个窗口唯一的标识
获取句柄的方法:driver.getWindowHandle();
下面的例子是点击京东页面,跳转到京东手机页面,然后关闭京东页面
driver.get("https://www.jd.com/");
driver.manage().window().maximize();
Thread.sleep(2000);
driver.findElement(By.linkText("手机")).click();
// 获取当前窗口的句柄
String handle = driver.getWindowHandle();
System.out.println("当前窗口的句柄是:"+handle);
Thread.sleep(2000);
for (String temhandle : driver.getWindowHandles()) { //获取所有的句柄,循环判断是否是新句柄
if (!temhandle.equals(handle))
driver.close();
driver.switchTo().window(temhandle);
}
driver.findElement(By.linkText("小米"));
}
selenium 窗口的切换的更多相关文章
- Selenium窗口切换-----Selenium快速入门(六)
有时候,我们打开多个窗口,进行多窗口操作,那么窗口间该如何切换呢? 切换的方法有两个,一个是通过窗口标题来验证,另一个是通过窗口特定的内容来验证,这两个方法都要求得到的标题或内容是唯一的. 用到的相关 ...
- Python+Selenium练习篇之19-多窗口之间切换
本文来介绍如何处理driver在多窗口之间切换,想一下这样的场景,在页面A点击一个连接,会触发在新Tab或者新窗口打开页面B,由于之前的driver实例对象在页面A,但是你接下来的脚本是操作页面B的元 ...
- Selenium+Java(十一)Selenium窗口切换
前言: Selenium在当前页面调整到新页面时打开了新的窗口,此时就需要跳转到新的窗口去,需要把窗口进行切换. 获取窗口句柄方法: 获取所有: //获取所有窗口句柄,返回的是set类型 driver ...
- selenium 操作多个窗口间切换
#coding=gbk ''' selenium多个窗口间切换 ''' from selenium import webdriver as wd from selenium.webdriver imp ...
- python selenium中iframe切换、window切换方法
一.selenium中iframe切换方法: 方法一:switch_to.frame frame函数中提供了三种定位方法:by index, name, or webelement. driver.s ...
- QT 主窗口和子窗口相互切换示例
QT 主窗口和子窗口相互切换示例 文件列表: SubWidget.h #ifndef SUBWIDGET_H #define SUBWIDGET_H #include <QtWidgets/QW ...
- Android实例-多窗口的切换
Android实例-多窗口的切换 1.图片一是程序运行后的界面. 2.图片二是点击"非模态显示"的界面. 3.图片三是点击"模诚显示"的界面(提示平台不支持). ...
- 关于Qt5(1)-- 两个窗口互相切换的例子
<QT Creator快速入门>这本书有一章介绍model和modeless的概念时,用到了两个窗口互相切换的例子.但是原文对该例子的说明非常模糊不清,现整理如下. 1,要求:登陆界面.主 ...
- selenium窗口截图操作
selenium窗口截图操作 使用背景:在自动化测试过程中,可能遇到执行错误情况,那么怎么样及时捕获出错信息/界面? 可以使用 get_screenshot_as_file(self,filenam ...
随机推荐
- 超参数、验证集和K-折交叉验证
本文首发自公众号:RAIS 前言 本系列文章为 <Deep Learning> 读书笔记,可以参看原书一起阅读,效果更佳. 超参数 参数:网络模型在训练过程中不断学习自动调节的变量,比如 ...
- adb的基本安装和介绍(一)
一,什么是adb? adb全称为Android Debug Bridge,就是起到调试桥的作用.顾名思义,adb就是android sdk 的一个工具 借助adb工具,我们可以管理设备或手机模拟器的状 ...
- iOS 架构
一.MVC MVC 全名 Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离 ...
- 模块 schedule 定时任务
schedule模块实现定时任务 2018-08-29 15:01:51 更多 一.官方示例 import schedule import time def job(): print("I' ...
- 俩个对象的hashCode()相同,则equals()也一定为true,对吗?
不对,俩个对象的hashCode()相同,equals()不一定为true. 代码示例: 1 String str1 = "通话"; 2 String str2 = "重 ...
- 【API知识】SpringBoot项目中@EnableXXX的原理
@EnableXX注解的使用场景 SpringBoot为开发人员提供了很多便利,例如如果想要定时功能,只要添加@EnableSchedule,即可配合@Schedule注解实现定时任务功能,不需要额外 ...
- 如何让Java应用成为杀不死的小强?(中篇)
各位坐稳扶好,我们要开车了.不过在开车之前,我们还是例行回顾一下上期分享的要点. 上期我们抛了一个砖:“如何实现 Java 应用进程的状态监控,如果被监控的进程 down 掉,是否有机制能启动起来?” ...
- wsl中配置SML环境
配置SML/NJ #安装 sudo apt install smlnj #但是wsl不支持32位程序,所以需要下面配置 sudo dpkg --add-architecture i386 sudo a ...
- Nginx知多少系列之(三)配置文件详解
目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...
- Google GMS介绍
Google GMS介绍GMS全称为GoogleMobile Service.GMS目前提供有Search.Search by Voice.Gmail.Contact Sync.Calendar Sy ...