您的位置:软件测试 > 开源软件测试 > 开源功能测试工具 > Selenium
轻松自动化---selenium-webdriver(python)
作者:网络转载 发布时间:[ 2013/8/9 13:21:18 ] 推荐标签:

  XPath

  --------------------------------------------------------------------------------

  什么是XPath:http://www.w3.org/TR/xpath/

  XPath基础教程:http://www.w3schools.com/xpath/default.asp

  selenium中被误解的XPath : http://magustest.com/blog/category/webdriver/

  XPath是一种在XML文档中定位元素的语言。因为HTML可以看做XML的一种实现,所以selenium用户可是使用这种强大语言在web应用中定位元素。

  XPath扩展了上面id和name定位方式,提供了很多种可能性,比如定位页面上的第三个多选框。

xpath:attributer (属性)
driver.find_element_by_xpath("//input[@id='kw']").send_keys("selenium")
#input标签下id =kw的元素

xpath:idRelative (id相关性)
driver.find_element_by_xpath("//div[@id='fm']/form/span/input").send_keys("selenium")
#在/form/span/input 层级标签下有个div标签的id=fm的元素
driver.find_element_by_xpath("//tr[@id='check']/td[2]").click()
# id为'check' 的tr ,定闪他里面的第2个td

xpath:position (位置)
driver.find_element_by_xpath("//input").send_keys("selenium")
driver.find_element_by_xpath("//tr[7]/td[2]").click()
#第7个tr 里面的第2个td

xpath: href (水平参考)
driver.find_element_by_xpath("//a[contains(text(),'网页')]").click()
#在a标签下有个文本(text)包含(contains)'网页' 的元素
xpath:link
driver.find_element_by_xpath("//a[@href='http://www.baidu.com/']").click()
#有个叫a的标签,他有个链接href='http://www.baidu.com/ 的元素

  link 定位

  --------------------------------------------------------------------------------

  有时候不是一个输入框也不是一个按钮,而是一个文字链接,我们可以通过link

#coding=utf-8

from selenium import webdriver
import time

browser = webdriver.Firefox()

browser.get(http://www.baidu.com)
time.sleep(2)
  
browser.find_element_by_link_text("贴 吧").click()
time.sleep(2)
browser.quit()

  一般一个那页面上不会出现相同的文件链接,通过文字链接来定位也是一种简单有效的定位方式。

  Partial Link Text 定位

  --------------------------------------------------------------------------------

  通过部分链接定位,这个有时候也会用到,我还没有想到很好的用处。拿上面的例子,我可以只用链接的一部分文字进行匹配:

browser.find_element_by_partial_link_text("贴").click()
#通过find_element_by_partial_link_text() 函数,我只用了“贴”字,脚本一样找到了"贴 吧" 的链接

相关链接:
上一页123下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd