Selenium-CSS页面元素定位

发表于:2017-1-11 14:07

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:白灰    来源:51Testing软件测试网采编

  CSS 可以比较灵活选择控件的任意属性,一般情况下定位速度要比 XPath 快,但对于初学者来说比较难以学习使用,下面我们就详细的介绍 CSS的语法与使用。
<html>
<body>
<div class="formdiv">
<form name="fnfn">
<input name="username" type="text"></input>
<input name="password" type="text"></input>
<input name="continue" type="button"></input>
<input name="cancel" type="button"></input>
<input value="SYS123456" name="vid" type="text">
<input value="ks10cf6d6" name="cid" type="text">
</form>
<div class="subdiv">
<ul id="recordlist">
<p>Heading</p>
<li>Cat</li>
<li>Dog</li>
<li>Car</li>
<li>Goat</li>
</ul>
</div>
</div>
</body>
</html>
  定位实例:
  css中的结构性定位
  结构性定位就是根据元素的父子、同级中位置来定位,css3标准中有定义一些结构性定位伪类如nth-of-type,nth-child,但是使用起来语法很不好理解,这里就简单介绍下。Selenium中则是采用了来自 Sizzle的 css3定位扩展,它的语法更加灵活易懂。
  nth-of-type
  例:
  #test > li:nth-of-type(2)    //表示ID为test下的第二个li元素,相当于xpath= //e[id=test]/li[2]
  nth-child
  例:
  #test > li:nth-child(4)   //表示ID为test下的第4个子元素,并且限制为li元素,如果不是则报错
  解:# 表ID
  >表子元素(父子关系)
  nth n表第几个
  type 同类型
  例子2:
<div class="subdiv">
<ul id="recordlist">
<p>Heading</p>
<li>Cat</li>
<li>Dog</li>
<li>Car</li>
<li>Goat</li>
</ul>
</div>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号