【selenium专题】元素定位之多层框架和窗口
2024-08-20 05:54:43
本节知识点
- 多层框架或窗口切换样式:WebDrvier.switchto().TargetLocator
Interface WebDriver.TargetLocator下所有可切换对象
参考API-Interface WebDriver.TargetLocator
WebDriver driver= new FirefoxDriver();//启动firefox浏览器
driver.manage().window().maximize();
1.切换frame
driver.switchTo().frame(int index); //按照frame的索引号定位frame,从0开始,可以是0,1,2,....
driver.switchTo().frame(String nameOrId); //按照frame的name或Id定位
driver.switchTo().frame(driver.findElement(By.by)); //按照frame的元素定位属性定位
driver.switchTo().defaultContent();//切换到打开页面是焦点默认frame
2.切换窗口
driver.driver.switchTo().window(String nameOrHandle);//按照window的name或Handle定位,若已知name直接输入即可。若无name可依据页面title调用以下方法切换窗口
/**
* 根据页面title切换页面
* @param windowTitle
* @boolean 切换到预期页面则返回True,否则返回False
*/
public static boolean switchtoWin(String windowTitle){
if(driver.getTitle().equals(windowTitle)){
return true;//如果是当前页面,直接返回
}else{
for(String handle : driver.getWindowHandles()) {
driver.switchTo().window(handle);
if(driver.getTitle().equals(windowTitle)){
return true;
}else{
continue;
}
}
}
return false;
}
3.切换到弹出窗口
driver.switchTo().alert();//切换到弹出窗口,下一步可随意操作alert对象
4.切换到当前frame默认焦点元素
driver.switchTo().activeElement()
最新文章
- offsetHeight, clientHeight与scrollHeight的区别
- SVM实践
- github page 和 hexo 搭建在线博客
- python 多线程学习
- phpcms-v9系统搭建wap网站及单页面
- C++读取txt文件
- Piggy-Bank(HDU 1114)背包的一些基本变形
- QT中的SOCKET编程(QT-2.3.2)
- PHP用substr截取字符串出现中文乱码问题用mb_substr
- Java 开发环境搭建
- C# 动态创建出来的窗体间的通讯 delegate2
- Java TCP服务端向客户端发送图片
- IOS WebViewJavascriptBridge 使用以及原理分析
- 【DFS】求水洼的数目
- Android的LinearLayout中orientation默认值为什么是HORIZONTAL
- Spring Boot的@SpringBootApplication无法引入的问题
- NXP ARM Vector Table CheckSum
- 解题:CF983A Finite or not
- [GDAL]在三维场景中显示DEM
- [Python 多线程] GIL全局解释器锁 (十三)
热门文章
- svn 的限制
- centos7 yum 安装jq
- 团队作业4Alpha冲刺
- Linux实战教学笔记40: Mha-Atlas-MySQL高可用方案实践(二)
- nginx 多域名配置,采用多配置文件的方式
- DevCloud for CloudStack Development
- loadrunner添加load generator连接失败解决办法
- code1214 线段覆盖
- [SoapUI] context.expand 和 groovyUtils.getXmlHolder 有什么不一样
- char a[] = ";hello world1";和char *p = ";hello world2";;的区别(转)