xpath定位方法小结(转载)
1、实例化一个浏览器
WebDriver driver = new FirefoxDriver();
2、driver.get() get传参数到浏览器中
3、常用定位方法
webelement XX=driver.findElement(by.XX)
3.1 by.id("value");
3.2 by.ame("value");
3.3 by.xpath("/html/body/XX/div[1]/a") 表示第一个div值为a的值
by.xpath(/html/body/XX/div[last])表示最后一个div 倒数第二个为[last-1]
by.xpath(/html/body/XX/div[(position)-4]) 表示前三个div
by.xpath(/html/body/XX/div[price>55])div下price大于55的列表
by.xpath("//*[@属性='值']") 查找某个属性的值
by.xpath("//title[@属性='值']") 查找title下所有值 属性
4.显示取值
4.1 .getText() 取定位所在的值
.gettittle()显示页面的title
5.点击一个按钮
.click();
6.多个对象处理机制
6.1点击弹出新窗口,wb定位不到元素,则用一下语法
for(Srting handle : driver.getwindowHandles()){
driver.switchTo().window(handle);
System.out.print(driver.gettitle()+'\n')
}
6.2 获取跳转后页面句柄
driver.getWindowHandle()
6.2 获取某个元素下的所有列表,在进行挨个点击返回页面
List<WebElement>11 =dr.findElements(by.xpath(""));
//li[position()<4] li列表的前三个li[last()]表示最后一个li[last()-1]表示倒数第二个
try{
for (WebElement y: 11){
y.click();
dr.getWindiwHendles(); //返回上一个页面
System.out.print(y.getText()+"\n");
}
Thread.sleep(3000);
}catch(InerttuptedException e) {
e.printStackTrace();//大于异常跟System.out.print(e)一样,通常用前者调式
}
7.等待时间
Thread.sleep(10000);
最好放在
try{}catch(exception e){System.out.printIn(e.toString());}

xpath定位方法小结(转载)的更多相关文章
- 【转载】Xpath定位方法深入探讨及元素定位失败常见情况
一.Xpath定位方法深入探讨 (1)常用的Xpath定位方法及其特点 使用绝对路径定位元素. 例如: driver.findElement(By.xpath("/html/body/div ...
- 元素定位-XPATH定位方法总结
1.Xpath定位方法探讨 xpath是比较常用的一种定位元素的方式,因为它很方便,缺点是,消耗系统性能.如果Xpath使用的比较好,几乎可以定位到任何页面元素,而且受页面变化影响较小. 1.1.什么 ...
- Xpath定位方法深入探讨及元素定位失败常见情况
一.Xpath定位方法深入探讨 (1)常用的Xpath定位方法及其特点 使用绝对路径定位元素. 例如: driver.findElement(By.xpath("/html/body/div ...
- 关于Xpath定位方法知道这些基本够用
一.写在前面 之前写过一些关于元素定位的文章,但是感觉都是很碎片,现在想做个整合,便有了这篇文章. 二.xpath的定位方法 关于xpath定位方法,网上写的已经很成熟了,现已百度首页为例,如下图: ...
- xpath定位方法详解
1.xpath较复杂的定位方法: 现在要引用id为“J_password”的input元素,可以像下面这样写: WebElement password = driver.findElement(By. ...
- selenium+Java,xpath定位方法详解(搬运留存)
用xpath绝对路径比较费事费力,还容易报错,下面几种模糊定位比较灵活好用 driver.findElement(By.xpath("//*[@id='J_login_form']/dl/d ...
- Selenium之XPATH定位方法
转自 https://www.cnblogs.com/hanmk/p/8997786.html https://www.cnblogs.com/hanmk/p/9015502.html 感谢原作者 1 ...
- ASP.NET对路径"C:/......."的访问被拒绝 解决方法小结 [转载]
问题: 异常详细信息: System.UnauthorizedAccessException: 对路径“C:/Supermarket/output.pdf”的访问被拒绝. 解决方法: 一.在IIS中的 ...
- 5 Python+Selenium的元素定位方法(xpath)
[环境] Python3.6+selenium3.0.2+FireFox50+win7 [定位方法] 1.方法:find_element_by_xpath('') 说明:xpath定位方法有相对路径和 ...
随机推荐
- double类型保留2位小数
double d = 12.2289; java.text.DecimalFormat df = new java.text.DecimalFormat("#.00"); Syst ...
- thinkphp 无限级分类的思想 分析
$list=$cate->field("id,name,pid,path,concat(path,'-',id) as bpath")->order('bpath')- ...
- e658. 组合图形
Area shape = new Area(shape1); shape.add(new Area(shape2)); shape.subtract(new Area(shape3)); shape. ...
- java中Scanner的nextLine()和next()的区别
首先,next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键.Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后 ...
- RSQLite 操作sqlite数据库
RSQLite 可以在R中方便的创建sqlite数据库,并进行检索, 这个R包依赖于DBI包 github 上的地址:https://github.com/rstats-db/RSQLite gith ...
- OpenGL模板缓冲区与模板测试
原文地址:http://www.blogjava.net/qileilove/archive/2014/01/23/409269.html 帧缓冲区有许多缓冲区构成,这些缓冲区大致分为: 颜色缓冲区: ...
- hadoop本地测试命令
http://www.cnblogs.com/shishanyuan/p/4190403.html if have assign the /etc/profile: hadoop jar /usr/l ...
- Hadoop参数汇总
linux参数 以下参数最好优化一下: 文件描述符ulimit -n 用户最大进程 nproc (hbase需要 hbse book) 关闭swap分区 设置合理的预读取缓冲区 Linux的内核的IO ...
- Office密码破解不求人!
你用Office吗?你会为你的Office文档加密吗?如果Office密码忘了求人吗?最后一个问题是不是让你很头大,求人办事不是要费钱就是要靠人情,不如自己拥有一款强大的密码破解工具,想要Office ...
- html5实现刮刮卡效果
通过Canvas实现的可刮涂层效果. 修改img.src时涂层也会自动适应新图片的尺寸. 修改layer函数可更改涂层样式. 涂层: 可刮效果: 以下是HTML源代码(已增加移动设备支持): 1 2 ...