selenium WebDriver 八种定位方式源码
/*
* 多种元素定位方式
*/
package com.sfwork; import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver; public class PageObjectModel { public static void main(String[] args) throws InterruptedException {
// TODO Auto-generated method stub
//设置webdriver路径
System.setProperty("webdriver.chrome.drvier",
"C:\\Program Files (x86)\\Google\\Chrome\\Application\\"
+ "chromedriver.exe");
//创建webdriver对象,控制浏览器
WebDriver driver = new ChromeDriver();
//打开浏览器
driver.navigate().to("http://www.baidu.com");
//浏览器最大化
driver.manage().window().maximize();
//声明一个web元素
WebElement input;
WebElement link;
//通过ID定位百度输入框
// input = driver.findElement(By.id("kw"));
//1、通过name定位元素
// input = driver.findElement(By.name("wd"));
//2、通过XPath定位元素
// input = driver.findElement(By.xpath("//*[@id='kw']"));
//3、通过cssSelector定位元素
input = driver.findElement(By.cssSelector("#kw"));
//4、通过classname定位元素
// input = driver.findElement(By.className("s_ipt"));
//5、通过TagName定位元素
//通过input属性查找的元素有多个,所以要放到集合里,并且findElements要用复数
List<WebElement> tagname = driver.findElements(By.tagName("input"));
System.out.println(tagname.size());
for(int i = 0; i<tagname.size(); i++){
System.out.println(tagname.get(i));
if(i == 7){
tagname.get(i).sendKeys("selenium");
}
}
//得到输入框的name
// String str1 = input.getAttribute("Name");
// System.out.println(str1);
// //输入开源力量
// input.sendKeys("开源力量");
//6、通过LinkText定位链接
// link = driver.findElement(By.linkText("新闻"));
// link.click();
//7、通过partialLinkText定位元素 ,模糊定位,如果有多个,自动匹配到第一个
// link = driver.findElement(By.partialLinkText("地"));
// link.click();
//让线程休眠3秒
Thread.sleep(3000);
//关闭driver
driver.close();
} }
selenium WebDriver 八种定位方式源码的更多相关文章
- Selenium 之18 种定位方式
1 id 定位 driver.find_element_by_id() HTML 规定id 属性在HTML 文档中必须是唯一的.这类似于公民的身份证号,具有很强的唯一性 from selenium i ...
- Selenium WebDriver 8大定位方式
Selenium WebDriver 8大定位方式: driver.find_element_by_id() driver.find_element_by_name() driver.find_ele ...
- Linux应用和系统库的2种安装方式---源码安装tarball和二进制rpm包
一.应用程序和系统库从哪里来? 两种机制,源码安装和二进制安装. 二.源码安装 tarball 1.核心思想是:利用开源代码,自己编译生成应用程序或者库,要求系统上必须已安装TMG(tar, make ...
- selenium定位方式源码的存放位置
find_element方法源码存在位置 by定位方法
- Java + Selenium + WebDriver八大元素定位方式
UI自动化测试的第一步就是进行元素定位,下面给大家介绍一下Selenium + WebDriver的八大元素定位方式.现在我们就以百度搜索框为例进行元素定位,如下图: 一.By.name() Java ...
- selenium基础--五种定位方式
find_element_by_name find_element_by_id find_element_by_xpath find_element_by_link_text find_element ...
- wxpython中单选框的两种创建方式源码展示
#coding=utf-8 import wx class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self,None,-1, ...
- Selenium Webdriver元素定位的八种常用方式
楼主原创,欢迎学习和交流,码字不容易,转载请注明出处,谢谢. 在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素 ...
- Selenium Webdriver元素定位的八种常用方式(转载)
转载自 https://www.cnblogs.com/qingchunjun/p/4208159.html 在使用selenium webdriver进行元素定位时,通常使用findElement或 ...
随机推荐
- 速微共享链的使用步骤和源码分析(UI设计参考)
一.速微共享链引言 速微共享链Service服务是Android四大组件之一,在Android中有着举足重轻的作用.Service服务是工作的UI线程中,当你的应用需要下载一个文件或者播放音乐等长期处 ...
- 微信小程序去除button按钮的边框
小程序开发记录 小程序开发中, 有时候我们希望button不要有边框, 需要使用button::after来实现, 具体如下: .operations button::after{border:0 n ...
- 电脑创建WIFI/无线热点之后, 手机QQ能上浏览器不能上网
这个完全是个人经验,绝对原创,请尊重博主原创权,转载请注明转于此博客. 问题如题,大家电脑创建无线热点之后, 有的人手机会出现QQ,微信能上网, 但是浏览器或者基于浏览器的那些比如应用商店不能上网, ...
- ps的快捷键
最近学习了一些ps切图,总结一些快捷键,以免自己忘记,总结的不好,也可能不全,忘大牛指点,试着坚持总结 1.工具箱 (多种工具共用一个快捷键的可同时按[Shift]加此快捷键选取) 矩形.椭圆选框工具 ...
- 负载均衡之基于L7负载
L7负载平衡 还有一种较为经常使用的负载平衡解决方式则是L7负载平衡.顾名思义,其主要通过OSI模型中的第七层应用层中的数据决定怎样分发负载. 在执行时.L7负载平衡server上的操作系统会将接收到 ...
- day01_使用Android Studio创建第一个Android项目
使用Android Studio开发Android项目如此简单 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize ...
- html5 canvas 画板
<!doctype html> <head> <meta http-equiv="Content-Type" content="text/h ...
- adobe acrobat x pro破解版
adobe acrobat x pro破解版是Adobe官方出品的PDF文档全能解决方案套件. PDF文件格式是Adobe公司设计的,用其公司开发的Adobe Acrobat X Pro来创建.编辑. ...
- 52、css属性操作
前面说的主要是css的使用规则和选择器等,这篇主要讲解css的具体使用. 一.css text 1.文本颜色:color 颜色属性被用来设置文字的颜色. 颜色是通过CSS最经常的指定: 1)十六进制值 ...
- python scipy计算机数值库
scripy有聚类的python 代码,如: http://blog.csdn.net/elaine_bao/article/details/50242867