页面元素的定位可以说是WebDriver中最核心的内容了,我们定位一个元素的目的主要有:操作元素,获取该元素的属性,获取元素的text以及获取元素的数量,WebDriver 为我们提供了以下几种方法来帮我们定位一个web元素:
通过元素的id获取
通过元素的name获取
通过元素的tag name 获取
通过css xpath 获取
通过xpath 获取
通过class name  获取
通过一部分的link text 获取元素
通过全部的link text 获取元素
package org.coderinfo.demo;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class FindSingleElements {
private static final String URL = "file:///C:/Desktop/Selenium/login.html"; // 需要更改这个URL到你自己的login.html 的文件路径
public static void main(String[] args) throws InterruptedException {
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize(); //最大化浏览器界面
driver.get(URL); //访问谷哥的首页 ,此处放弃度娘。
Thread.sleep(2000); //Wait for page load
driver.findElement(By.id("inputEmail")).sendKeys("coderinfo@163.com"); // use id to find a web element
Thread.sleep(2000);
driver.findElement(By.name("password")).sendKeys("#####");    // use name to find a web element
Thread.sleep(2000);
driver.findElement(By.cssSelector("#inputEmail")).clear();   // use css selector to find a web element
Thread.sleep(2000);
driver.findElement(By.linkText("UseLink")).click();  // use link text to find a web element
Thread.sleep(2000);
driver.findElement(By.partialLinkText("Use")).click(); // use partial link text to find a web element
Thread.sleep(2000);
String formClassName = driver.findElement(By.tagName("form")).getAttribute("class");  //use tag name to find a web element
System.out.println(formClassName);
Thread.sleep(2000);
String text = driver.findElement(By.xpath("/html/body/form/div[1]/div")).getText();  // use xpath to find a web element
System.out.println(text);
String inputText = driver.findElement(By.className("inputClass")).getAttribute("placeholder");  // use class name to find a web element
System.out.println(inputText);
Thread.sleep(5000);
driver.quit();  //彻底退出WebDriver
}
}
   
最新内容请见作者的GitHub页:http://qaseven.github.io/
   

Selenium2.0功能测试之唯一元素的定位相关推荐

  1. 自动化测试之元素的定位

    目录 一.元素定位 1.根据id属性进行定位(id是唯一的) 2.name属性进行定位 3.tag name(标签名) 定位和class name(标签中的class属性)定位 (1)使用class ...

  2. UI自动化测试(二)浏览器操作及对元素的定位方法(xpath定位和css定位详解)

    Selenium下的Webdriver工具支持FireFox(geckodriver). IE(InternetExplorerDriver).Chrome(ChromeDriver). Opera( ...

  3. UI自动化测试(二)浏览器操作及对元素的定位方法(xpath定位和css定位详解)...

    Selenium下的Webdriver工具支持FireFox(geckodriver). IE(InternetExplorerDriver).Chrome(ChromeDriver). Opera( ...

  4. 记selenium1.0升级到selenium2.0

    前阵子因为要进行支持多浏览器的自动化测试,原来selenium1.0仅支持到firefox3.6,IE8,chrome4的版本,而公司GA数据显示用户多使用IE9,Firefox20,chrome26 ...

  5. 如何从JavaScript数组中获取多个随机唯一元素?

    The JavaScript is a very versatile language and it has a function almost everything that you want. J ...

  6. day15 Ui自动化元素的定位

    day15 元素的定位Ui自动化元素的定位1.火狐浏览器安装try xpath2.元素定位思路:(1)查看页面元素,确认能够唯一定位到元素的属性,比如id,文案3.学习xpath cssSelecto ...

  7. selenium2.0(WebDriver) API - 转载自:http://www.cnblogs.com/puresoul/p/3477918.html

    1.1  下载selenium2.0的包 官方download包地址:http://code.google.com/p/selenium/downloads/list 官方User Guide:  h ...

  8. opencv4.0.1 qr二维码定位识别源码详解(一)

    一.概述 opencv4.0版本以后,加入了二维码定位解码的功能,其主要功能基于quirc开源库,下载地址GitHub.约1200行代码,识别与定位占了约800行,解码部分不作赘述,直接调用quric ...

  9. 基于功能安全的车道级定位精度分析

    自动驾驶常常提到定位精度问题,很多厂商对外宣称的定位精度基本上差不多. 比如某业界领先的M公司,其定位和制图精度: Lateral: 6cm (1 sigma)Longitude: 15cm (1 s ...

最新文章

  1. 为什么掌握 Linux 对程序员这么重要
  2. step1 . day2:Linux系统基础知识
  3. java+调用jacoco_java操作jacoco
  4. 想追身边的女孩?哥们我只能帮到你这份上了
  5. ajax传值controller怎么写,ajax向 controller传值(示例代码)
  6. mysql 慢sql分析_如何分析Mysql慢SQL
  7. java 跨域 下载文件_文件下载重命名(可跨域)
  8. mysql视图存储_Mysql 视图、存储过程以及权限控制
  9. python中组合框_如何从SQL填充组合框数据?使用Python
  10. 山东大学linux应用实验五,【Linux】山东大学Linux应用课程实验记录
  11. 跟着王道考研学计算机网络笔记(一):初步了解计算机网络
  12. 如何查看谷歌地球卫星地图的拍摄时间
  13. VMware安装FusionComputer
  14. 拼多多订单详情接口订单同步接口
  15. Mybatis-plus 苞米豆生态圈
  16. 入门编程(小白写代码的神器)
  17. 数据链路层的基本概念
  18. iOS开发之网络通信(1)—— 计算机网络
  19. 如何学习微信公众平台开发?
  20. Java毕业设计_基于BootStrap的晴雅花艺交流论坛的开发

热门文章

  1. 2008年9月三级网络技术考试试卷 参考答案1
  2. 一个资源管理系统的设计--基于cgroup机制
  3. mysql-5.7.17.msi安装
  4. React Native 轻松集成统计功能(iOS 篇)
  5. 详解 Array.prototype.slice.call(arguments)
  6. lua脚本之lua语言简介以及lua的安装
  7. 微软企业库Unity学习笔记
  8. JS框架设计之对象类型判断一种子模块
  9. C#.Net 如何动态加载与卸载程序集(.dll或者.exe)0-------通过应用程序域AppDomain加载和卸载程序集...
  10. 虚拟机中出现两个虚拟网卡