CSS Locator定位元素方式

CSSSelector是用于渲染HTML或XML文档的关键技术,允许开发者和测试人员通过ID、类、标签、属性等方式定位并操作页面元素。ID选择器使用#,CLASS选择器用.,标签选择器直接用标签名,属性选择器则依据元素的特定属性。组合使用这些选择器可以更精确地定位复杂结构的元素,例如ID和CLASS的组合、ID和标签的组合等。后代选择器和子元素选择器则帮助定位元素的关系位置。
摘要由CSDN通过智能技术生成

一、什么是CSS Selector

CSS是一种用于渲染HTML或者XML文档的语言,CSS利用其选择器可以将样式属性绑定到文档中的制定元素中,即前端开发人员可以利用CSS设定页面上每一个元素的样式。所以理论上说,无论一个元素定位有多复杂,既然一个开发人员能够定位到并设置样式,那么测试人员同样应该也能定位继而操作该元素。

二、定位方式

  • ID选择器 通过#来定义

        Driver.find_element(By.CSS_SELECTOR, '#kw'),定位id=kw的元素

  • CLASS选择器(类选择器) 使用.(点)来定义格式

        Driver.find_element(By.CSS_SELECTOR, '.RedChamber'),定位class=RedChamber的元素

        注:如果class属性值有空格,则可以使用如下方法来定位:

        可以使用 点 替换掉所有的空格,如Dream.of.the.Red.Chamber

        可以截取一部分值,然后在截取的部分值之前加上 点

  • 标签选择器 通过 标签的标签名来定位元素

        Driver.find_element(By.CSS_SELECTOR, 'span'),定位标签名为 span的元素

  • 属性选择器 根据标签中的属性来定位元素,格式:[属性名="属性值"]

        Driver.find_element(By.CSS_SELECTOR, '[id="kw"]'),定位id属性为kw的元素

        Driver.find_element(By.CSS_SELECTOR, '[id]'),没有指定属性值,则返回所有具有某个属性的元素。

        Driver.find_element(By.CSS_SELECTOR, '[class ^=bg]'),匹配所有class属性值bg开头的元素

  • ID选择器和class选择器的组合使用 使用方式 #kw.RedChamber

        ID选择器和class选择器组合使用,那么两个条件是且的关系

        Driver.find_element(By.CSS_SELECTOR, '#kw.RedChamber')

  • ID选择器和标签选择器的组合使用 标签选择器只能放在ID选择器的前面

        Driver.find_element(By.CSS_SELECTOR, 'a#kw')

  • 标签选择器和class选择器组合使用

        Driver.find_element(By.CSS_SELECTOR, 'option.poem')

  • 使用多个属性定位元素

        Driver.find_element(By.CSS_SELECTOR, '[id="kw"][name="first"]

  • 后代选择器

        使用空格来定义 父元素 加上 空格 后代元素,这种方法只能选择到直系后代,不论是儿子还是孙子都可以。

        Driver.find_element(By.CSS_SELECTOR, '#form span')

  • 子元素选择器,只能选自己的儿子,不能隔代,使用>来定位

        Driver.find_element(By.CSS_SELECTOR, '[id="form"] > span')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值