selenium -凯发k8官方网
凯发k8官方网
收集整理的这篇文章主要介绍了
selenium - css selector
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
用css(即层叠样式表cascading stylesheet) selector来定位(locate)页面上的元素(elements)。selenium凯发k8官方网官网的document里极力推荐使用css locator,而不是xpath来定位元素,原因是css locator比xpath locator速度快,特别是在ie下面(ie没有自己的xpath 解析器(parser))。有很多跟selenium相关的blog文章都有提到使用css selector的技术。之前我不会css selector,甚至一看到css就头疼。但我相信用css selector能非常精准的定位到我想测试的elements。因为前端开发人员就是用css selector设定页面上每一个元素的样式,无论那个元素的位置有多复杂,他们能定位到,那我也能定位到。 读一下这个文档就能明白大部分的css selector了 http://www.w3.org/tr/css3-selectors/
如果button上有class属性的,如:
可以这样写: css=button.x-right-button:contains("ok") :contains是个pseudo-class,用冒号开头,括号里是内容。 pseudo-classes是css提供的伪类,用来访问页面上dom tree之外的信息,还有pseudo-elements 用来最精准的定位页面上的某一行文字,甚至某一行文字的第一个字母。我也是昨天头一回听说有这玩意儿,具体可以研究一下css3 selector文档的chapter 6.6 pseudo-classes 和 chapter 7 pseudo-elements
基本上用xpath能定位的元素,都能用css selector定位到。 它两最相似的是这样写:
xpath=//table/tr/td/div/span[1] css=table>tr>td>div>span:nth-child(1) *xpath没在页面上测试过。 一个非常好的blog,不看可惜了。 http://saucelabs.com/blog/index.php/2009/10/selenium-tip-of-the-week-start-improving-your-locators/
综上所述,就是: 有固定id的用id selector, 没有固定id的用css selector。 pseudo-selements :contains()很好用。 会了这几下子,基本上定位就不成问题了。
如果button上有class属性的,如:
可以这样写: css=button.x-right-button:contains("ok") :contains是个pseudo-class,用冒号开头,括号里是内容。 pseudo-classes是css提供的伪类,用来访问页面上dom tree之外的信息,还有pseudo-elements 用来最精准的定位页面上的某一行文字,甚至某一行文字的第一个字母。我也是昨天头一回听说有这玩意儿,具体可以研究一下css3 selector文档的chapter 6.6 pseudo-classes 和 chapter 7 pseudo-elements
基本上用xpath能定位的元素,都能用css selector定位到。 它两最相似的是这样写:
abcd1234 |
综上所述,就是: 有固定id的用id selector, 没有固定id的用css selector。 pseudo-selements :contains()很好用。 会了这几下子,基本上定位就不成问题了。
转载于:https://www.cnblogs.com/chengnuo2008/p/5740272.html
总结
以上是凯发k8官方网为你收集整理的selenium - css selector的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: