1、id

document.getElementById('xxx')

2、name

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
document.getElementsByName('xxx')

3、className

document.getElementsByClassName('xxx')

4、tagName

document.getElementsByTagName('xxx')

5、linkText
- 文本(全匹配)
6、partialLinkText
- 文本(包含)
7、xpath
8、cssSelector
  8.1.tagName

driver.findElement(By.cssSelector("input")

  8.2.id

driver.findElement(By.cssSelector("input#username"));    //html标签和#id
driver.findElement(By.cssSelector("#username"));	//只是#id

  8.3.className

driver.findElement(By.cssSelector(".username")); 

  8.4.精确匹配

driver.findElement(By.cssSelector("input[name=username]"));	
//属性名=属性值,id,class,等都可写成这种形式
driver.findElement(By.cssSelector("img[alt]"));	
//存在属性。例如img元素存在alt属性
driver.findElement(By.cssSelector("input[type='submit'][value='Login']"));	
//多属性

  8.5.模糊匹配

^= driver.findElement(By.cssSelector(Input[id ^='ctrl']));	
//匹配到id头部 如ctrl_12
$= driver.findElement(By.cssSelector(Input[id $='ctrl']));	
//匹配到id尾部 如a_ctrl
*= driver.findElement(By.cssSelector(Input[id *= 'ctrl']));	
//匹配到id中间如1_ctrl_12

  8.6.查询子元素

//子元素	A>B
driver.findElement(By.cssSelector("form>span>input"));
//后代元素	A空格B	
driver.findElement(By.cssSelector("form input"))
//第一个后代元素	:first-child	
driver.findElemet(By.cssSelector("form :first-child"))
//最后一个子元素	:last-child	
driver.findEleme(By.cssSelector("form :last-child"))
//第N个子元素	:nth-child(N)	
driver.findElemet(By.cssSelector("form#form :nth-child(2)"))

  

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄