【python-web-ui自动化测试记录(一)】selenium八种元素定位方式

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

例如:记录经验,希望对大家有帮助。


提示:以下是本篇文章正文内容,下面案例可供参考

一、环境搭建

安装python
安装selenium
下载浏览器驱动:链接: link
注意:下载后的浏览器驱动,放到python安装路径的\Scripts文件夹里即可

二、使用步骤

1.快速体验,使用python脚本打开浏览器访问网址

代码如下(示例):

# 导入库
from selenium import webdriver
# 创建驱动对象
driver = webdriver.Chrome()
# 操作对象调用get方法访问网址
driver.get("http://www.baidu.com")
# 最大化窗口
driver.maximize_window()

2.元素定位八大方法(第一式)

注意: 如果遇到driver.find_element_by_id() ,可以尝试以下方法

  1. 版本升级后旧方法被弃用,新方法:driver.find_element(By.ID,“kw”)
  2. 如果使用新方法,By报错,尝试:from selenium.webdriver.common.by import By
  3. 可以进去By中查看代码
class By(object):
    """
    Set of supported locator strategies.
    """

    ID = "id"
    XPATH = "xpath"
    LINK_TEXT = "link text"
    PARTIAL_LINK_TEXT = "partial link text"
    NAME = "name"
    TAG_NAME = "tag name"
    CLASS_NAME = "class name"
    CSS_SELECTOR = "css selector"

1,ID

“kw” 是通过检查页面元素,发现输入框id=‘kw’

截图:
获取元素ID值
代码如下(示例):

e1 = driver.find_element(By.ID,"kw")
e1.send_keys("深田咏美")

time.sleep(3)
# 关闭浏览器
driver.quit()

2,XPATH (XPATH表达式)

3,LINK_TEXT (精准定位超链接text信息)

值必须写完整,否则找不到元素
在这里插入图片描述

driver.find_element(By.LINK_TEXT, "必须写完整").click()

4,PARTIAL_LINK_TEXT (模糊匹配超链接text信息)

5,NAME (name属性定位)

6,TAG_NAME = “tag name” (标签名定位)

7,CLASS_NAME = “class name” (类名定位)

8,CSS_SELECTOR = “css selector” (cssx选择器定位)


总结

元素定位看似复杂,其实一点也不简单,实际工作中往往是最耗费时间的
怎么简单怎么来,只要能定位到就行,不要陷入方法中
学习:css高级语法和xpath高级语法,可以应对一些复杂的元素定位情况

报错信息

NoSuchElementException:找不到元素的异常
原因:
1,表达式写错了,
2,元素不存在当前界面(上一步操作失败导致),
3,元素还未加载出来
InvalidSelectorException: 无效选择器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值