cssSelector定位笔记1
cssSelector定位方法:
1.使用class属性定位元素:
driver.findElement(By.cssSelector("input.login"));
即可以先指定一个html的标签,然后加上“.”符号,在加上class属性的
值
2.WebElement ele = driver.findElement(By.cssSelector
("input#username"));
即可以先指定一个 HTML 标签,然后加上一个“#”符号,跟上 id 的属性
值
3.除了 class 和 id 属性,CSS 选择器也可以使用其他的元素属性来定位
。下面的例子中,将使用<input>中的 Name 属性。
WebElement userName =driver.findElement(By.cssSelector("input
[name=username]"));
4.如果一个属性不足以来定位到一个元素, 则联合使用其他的属性来达到
精确匹配。下面的例子中,使用多个属性来定位<input>元素。
WebElement previousButton =driver.findElement(By.cssSelector
("input[type='submit'][value='Login']"));
5.CSS 选择器提供了一个部分属性值匹配定位元素的方法。这为测试那些
页面上具有动态化的属性的元素是非常有用的。例如,在 ASP.NET 应用中
,元素 id 是动态生成的。
a.语法:^=
例子:Input[id^= ' ctrl']
描述:如果一个元素的ID是ctrl_12,就可以定位到此元素,匹配到 id的
头部 ctrl
b.语法:$=
例子:input[id$='_userName']
描述:如果一个元素的ID 是a_1_userName,返将会匹配到 id 的尾部
_userName
c.语法:*=
例子:Input[id*='userName']
描述:如果一个元素的 ID 是 panel_login_userName_textfield,返将
会匹配到此 id 值的_userName
cssSelector定位笔记1的更多相关文章
- By.cssSelector定位元素一个不足发现
这个如果用cssSelector定位,代码如下,此时输出的数值是0 System.out.println(driver.findElements(By.cssSelector("div[c ...
- Selenium 中 cssSelector定位
一.为什么使用cssSelector定位元素? 目前针对一些常规定位方式有:By.id.By.name.By.LinkTest(针对<a>标签).By.ClassName 针对不太好定位的 ...
- XPath和CssSelector定位总结
1. 介绍XPath和CssSelector 2. XPath有哪些方式 2.1 通过XPath语法 2.2 Contains关键字 2.3 Start-With 2.4 Or和And关键字 2.5 ...
- css的定位笔记
relative:相对定位. 1. 不论其父元素和相邻元素的position是什么,均相对于自身原来的位置来偏移. 2. 不会脱离文档流,其原来的位置依然保留着,不会被文档中其他的元素占用. 3. 原 ...
- cssSelector定位写法大全(适用于selenium、robotframework)
1.定位weibo登录框 输入框的元素信息如下 css的写法(可以看到name属性的属性值是“username”,class属性的值“W_input" driver.findElement( ...
- position定位笔记
position定位 position一共有四个可选属性:static/relative/absolute/fixed 代码: <style type="text/css"& ...
- Xpath定位和CssSelector定位的区别
1.Xpath基本语法: (1)"/":从根节点选取,下级节点 (2)"//":任意节点选取 (3)"*":任意标签选取 (4)" ...
- Selenium2(java)定位页面元素 二
辅助工具: chrome浏览器,F12打开控制台; Firefox浏览器,F12打开控制台; 或者选中要定位的元素右键 安装firefox扩展firebug和firepath; 安装之后F12可调用f ...
- selenium WebDriver 八种定位方式源码
/* * 多种元素定位方式 */ package com.sfwork; import java.util.List; import org.openqa.selenium.By; import or ...
随机推荐
- 【javascript学习——《javascript高级程序设计》笔记】DOM操作
DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口).DOM描绘了一个层次节点树,允许开发人员添加.移除和修改. 1.节点层次 <html> <head& ...
- DirectShow
1 最简单的DirectShow应用程序 — 播放视频 1.简介DirectShow是DirectX中的一套处理媒体播放.音视频采集的开发包,在DirectX SDK Summer 2004(Dire ...
- MySQL生成模型
根据数据库表生成Model using System; using System.Collections.Generic; using System.Data; using System.Text; ...
- java比较两个对象是否相等的方法
java比较两个对象是否相等直接使用equals方法进行判断肯定是不会相同的. 例如: Person person1 =new Person("张三"); Person pe ...
- About_PHP_函数
关于验证码的完善: //生成干扰线 $posLineX1 = rand(12,50); $posLineX2 = rand(50,110); $posX = rand(10,50); for($i=0 ...
- *HDU1829 并查集
A Bug's Life Time Limit: 15000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- log4j详解(二)
在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对Logger.Appender及Layout的分别使用.Log4j支持两种配置文件格式,一种是XML格式的文件,一 ...
- spring接收json格式的多个对象参数(变通法)
两种方法 方法1 如果使用spring mvc同客户端通信,完全使用json数据格式,需要如下定义一个RequestMapping @Controller public class TestContr ...
- mysql_索引原理及优化
思考: 我们知道mysql最好的数据存储量级是百万级别,是的往往在百万级别或者几十万级别就会出现慢查询(我对慢查询的定义是大于1秒),几年前我所在的一个做pos机支付的联机交易的核心系统组,当时就做过 ...
- 改善你的jQuery的25个步骤 千倍级效率提升
1. 从Google Code加载jQueryGoogle Code上已经托管了多种JavaScript类库,从Google Code上加载jQuery比直接从你的服务器加载更有优势.它节省了你服务器 ...