WEB-UI自动化测试-最全元素定位方法

# BY.ID
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver.find_element(By.ID, "kw").send_keys("自动化")

# BY.NAME
driver.find_element(By.NAME, "wd").send_keys("自动化")

# BY.LINK_TEXT,链接文本
driver.find_element(By.LINK_TEXT, "新闻").click()

# BY.PARTIAL_LINK_TEXT,部分文本链接
driver.find_element(By.PARTIAL_LINK_TEXT, "新").click()

# BY.XPATH定位,分为五种
# 相对路径+索引定位
# 定位form模块第一个span标签下的input
driver.find_element(By.XPATH, "//form/span[1]/input")

# 相对路径+属性定位
driver.find_element(By.XPATH, "//[@autocomplete = 'off']")

# 相对路径+通配符定位,*是通配符,匹配所有属性值为off的属性
driver.find_element(By.XPATH, "//*[@* = 'off']")
driver.find_element(By.XPATH, "//*[@autocomplete = 'off']")

# 相对路径+部分属性值定位,属性要唯一
driver.find_element(By.XPATH, "//*[starts-with(@autocomplete.'ff')]")
driver.find_element(By.XPATH, "//*[substring(@autocomplete,2) = 'ff']")
driver.find_element(By.XPATH, "//*[contains(@autocomplete ,'ff')]")

# 相对路径+文本标签值定位
driver.find_element(By.XPATH, "//span[text() = '按图片搜索']")

# 组合定位

# 标签名#id属性值:指的是该input标签下id属性为kw的元素

driver.find_element_by_css_selector("input#kw")

# 标签名.class属性值:指的是该input标签下class属性为s_ipt的元素

driver.find_element_by_css_selector("input.s_ipt")

# 标签名[属性=’属性值‘]:指的是该input标签下name属性为wd的元素

driver.find_element_by_css_selector('input[name="wd"]')

# 父级元素标签名>标签名.class属性值:指的是span下的input标签下class属性为s_ipt的元素

driver.find_element_by_css_selector("span>input.s_ipt")

# 多个属性组合定位元素(常用)

# 指的是input标签下id属性为kw且name属性为wd的元素

driver.find_element_by_css_selector('input.s_ipt[name="wd”]')

# 指的是input标签下name属性为wd且maxlength为100的元素

driver.find_element_by_css_selector('input[name="wd"][maxlength="100"]')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值