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 ...
随机推荐
- matlab学习第一天
>> x=linspace(-,,); >> y=x.^.*sin(x); >> plot(x,y,) >> plot(x,y,) 分析: linspa ...
- hdu分类 Math Theory(还有三题!)
这个分类怎么觉得这么水呢.. 这个分类做到尾的模板集: //gcd int gcd(int a,int b){return b? gcd(b, a % b) : a;} //埃氏筛法 O(nlogn) ...
- Node.js-Socket.IO【1】-身份验证
Websocket身份验证失败的时候,希望向前台传输错误信息,但是Socket.IO目前最新版本1.4.6在后台使用 next(new Error('unauthorization')); 前端的代码 ...
- Activiti工作流学习(三)Activiti工作流与spring集成
一.前言 前面Activiti工作流的学习,说明了Activiti的基本应用,在我们开发中可以根据实际的业务参考Activiti的API去更好的理解以及巩固.我们实际的开发中我们基本上都使用sprin ...
- ACM: SCU 4438 Censor - KMP
SCU 4438 Censor Time Limit:0MS Memory Limit:0KB 64bit IO Format:%lld & %llu Practice D ...
- css before,after伪元素妙用
我们知道,css伪元素包括after,before,first-letter等,通过合理的利用伪元素,我们可以让我们的结构更简洁. 通常写法如p::after{content:' '},其中conte ...
- 如何在Android中实现全屏,去掉标题栏效果
在进行Android UI设计时,我们经常需要将屏幕设置成无标题栏或者全屏.要实现起来也非常简单,主要有两种方法:配置xml文件和编写代码设置. 1.在xml文件中进行配置 在项目的清单文件A ...
- defer 和 async 本地对象和宿主对象
<script async></script> 没有defer和async的情况下是"同步执行"的,浏览器解析到这里的时候,会先加载资源完成后立即执行,并阻 ...
- static{ }语句块详解
static{}(即static块),会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法.举ge例子: public class Test { public static i ...
- GCC编译C代码
C程序的编译过程 常用文件的后缀名: gcc编译c代码 1.gcc 常用编译选项: 2.gcc编译方法 testc.c: #include <stdio.h> int main ...