html  代码:

<html>
<body> <div id="div1">
<input name="divl1input"></input>
<a href="http://www.sogou.com/">搜狗搜索</a>
<img alt="div1-img1 "src="http://www.sogou.com/images/logo/new/sogou.png"
href = "http://www.sogou.com">搜狗图片</img>
<input type ="button" value="查询"></input>
</div>
<br></br>
<div name="div2">
<input name="div2input"></input>
<a href = "http://www.baidu.com">百度搜索</a>
<img alt="div2-img2" src="http://www.baidu.com/img/bdlogo.png"
href= "http://www.baidu.com">百度图片</img>
<input type="button" value="查询"></input>
</div> <br></br>
<br></br>
<br></br>
<br></br>
<a href="http://www.sogou.com"> 搜狗搜索</a><br></br>
<a href="http://www.baidu.com"> 百度搜索</a> <br></br>
<br></br>
<br></br>
<br></br> <table width="400" border="1" id= "table">
<tr>
<td align="left" >消费项目。。。。</td>
<td align="right"> one month </td>
<td align="right">two month</td>
</tr> <tr>
<td align="left" >衣服</td>
<td align="right"> 1000 元 </td>
<td align="right">2000 元</td>
</tr> <tr>
<td align="left" >化妆品</td>
<td align="right"> 10 元 </td>
<td align="right">20 元</td>
</tr> <tr>
<td align="left" >零食</td>
<td align="right"> 120 元 </td>
<td align="right">100 元 </td>
</tr> <tr>
<td align="left" >总计</td>
<td align="right">88880 元 </td>
<td align="right">10000 元</td>
</tr> </table>
</body>
</html>

java 代码:

package page_elements_positioning;

import java.util.List;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver; public class By_tar_name { public static void main(String[] args) {
String url ="file:///C:/Users/ty/Desktop/selenium_test.html";
System.setProperty("webdriver.firefox.bin", "D:\\softerWare\\firefox\\firefox\\firefox.exe");
WebDriver driver ;
driver = new FirefoxDriver();
driver.get(url);
driver.findElement(By.tagName("a")); WebElement link=driver.findElement(By.tagName("a"));
List<WebElement> links =driver.findElements(By.tagName("a")); //link.click();
System.out.println(links.get(0)+"--------"+links.get(1));
links =driver.findElements(By.xpath("//input[2]"));
System.out.println("2----------"+links.size()); // 1..绝对路径 ---查找 ;
links.addAll(driver.findElements(By.xpath("/html/bodydiv/input[@value='查询']")));
System.out.println(links.size());
//2.--使用相对路径 ;
driver.findElement(By.xpath("//input[2]")).click();
//3.. 使用页面的属性值 来定位原素实例;
WebElement img=driver.findElement(By.xpath("//img[@alt='div1-img1']"));
//定位第一张图片:
//mg[@href='www.sogou.com']
//定位第二个div中的input的值;
//div[@name='div2']/input[@name='div2input'] ;
//定义第一个div中的第一个链接
//div[@id='div1']/a[@herf='www.sogou.com']
//定位页面的查询按钮;
//input[@type='button'] }
}

selenium webdriver XPath的定位方法练习 !的更多相关文章

  1. selenium webdriver 表格的定位方法练习

    selenium webdriver 表格的定位方法 html 数据准备 <html> <body> <div id="div1"> <i ...

  2. selenium中Xpath轴定位方法

    1.Xpath轴:轴可定义相对于当前节点的节点集. 使用语法:轴名称::节点名称 例://input[@data-value="SXRYNAME"]/parent::td/foll ...

  3. Selenium Webdriver——Xpath轴定位(preceding)

     1.preceding-sibling 选取当前节点之前的所有同级节点 text=出发之前的同级节点: 2.preceding 选取当前节点开始标签之前的所有节点 text=出发节点标签之前的所有i ...

  4. selenium自动化之元素定位方法

    在使用selenium webdriver进行元素定位时,有8种基本元素定位方法(注意:并非只有8种,总共来说,有16种). 分别介绍如下: 1.name定位 (注意:必须确保name属性值在当前ht ...

  5. Selenium WebDriver 8大定位方式

    Selenium WebDriver 8大定位方式: driver.find_element_by_id() driver.find_element_by_name() driver.find_ele ...

  6. selenium webdriver三种等待方法

    webdriver三种等待方法 1.使用WebDriverWait from selenium import webdriverfrom selenium.webdriver.common.by im ...

  7. [selenium webdriver Java]元素定位——findElement/findElements

    策略 语法 语法 描述 By id driver.findElement(By.id()) driver.findElements(By.id()) 通过id属性定位元素 By name driver ...

  8. selenium webdriver python 元素定位

    总结   定位查找时,返回查找到的第一个match的元素.如果找不到,则 raise NoSuchElementException   单个元素定位: find_element_by_idfind_e ...

  9. 【转】selenium webdriver三种等待方法

    原文:https://www.cnblogs.com/lgh344902118/p/6015593.html webdriver三种等待方法 1.使用WebDriverWait from seleni ...

随机推荐

  1. 数构与算法 | 什么是大 O 表示算法时间复杂度

    正文: 开篇我们先思考这么一个问题:一台老式的 CPU 的计算机运行 O(n) 的程序,和一台速度提高的新式 CPU 的计算机运 O(n2) 的程序.谁的程运行效率高呢? 答案是前者优于后者.为什么呢 ...

  2. 20155213 实验四 Android程序设计

    20155213 实验四 Android程序设计 实验内容 基于Android Studio开发简单的Android应用并部署测试; 了解Android组件.布局管理器的使用: 掌握Android中事 ...

  3. 20155236 2016-2017-2 《Java程序设计》第十周学习总结

    20155236 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据. 程序员所作的事情就是把数据发 ...

  4. 初识Linux的感受与对它的印象——20155328张钰清

    之前从未接触过虚拟机的我,由于这次寒假预备作业,稍稍地认识了一下Linux操作系统. 在自己笔记本上安装Linux操作系统 根据老师提供的<基于VirtualBox虚拟机安装Ubuntu图文教程 ...

  5. day 10 字典dict

    添加 xxx[新的key] = value 删除 del xx[key] 修改 xxx[已存在的key] = new_value 查询 xxx.get(key) 1. dict 字典 #### lis ...

  6. ES6 localStorage 类库

    无意中看到的,记录下. 用到了es6语法.支持在js中写构造函数 class CovLocalDB { constructor (name) { this.LS = null this.name = ...

  7. 用反射或委托优化switch太长的方法

    在代码进行优化的时候,发现了switch case太长,有的竟然长达30个远远超过一屏这样在代码的可读性来说很差.特别在我们看代码的时候要拉下拉框我个人觉得这是不合理的.但是我不建议有switch就进 ...

  8. Oracle的集合运算符

    Oracle的集合运算符有并集union.union all,交集intersect,差集minus 先建表myemp,进行集合运算的测试 create table myemp as select * ...

  9. Qt 利用XML文档,写一个程序集合 一

    接到领导需求安排,说公司未来的硬件设备会越来越多,与每个设备对应的设备检测和设置程序也会增多.导致软甲太多,不好掌控.所以希望做一个完整的软件,但是呢,每个子程序还得独立,应为每个用户购买的设备不是一 ...

  10. Unity Lighting - Emissive Materials 自发光材质(九)

      Emissive Materials 自发光材质 Whilst Area Lights are not supported by Precomputed Realtime GI, similar ...