selenium的元素定位

2021-08-07 19:06:33 字數 1160 閱讀 9228

selenium元素定位方式(8種定位方式)

1.id

driver.findelement(by.id("kw"))

2.name

driver.findelement(by.name("wd"))

3.class

driver.findelement(by.classn

ame("s_ipt

")

4.tag name

基本上在日常用不到這種定位方式,因為大部分情況下標籤名都是相同的,只有很少數才會不同

driver.findelement(by.tagname("input"))

5.link text

driver.findelement(by.linktext("設定"))

6.partial  link

partial  link是對link text的一種補充

driver.findelement(by.partiallinktext(""))

7.path

//表示某一標籤

*表示所有標籤

(1)格式://*[@id='kw']---->查詢所有id=kw的標籤,但是一般不建議用*,應該具體到某乙個標籤,如//input[@id='kw'],此處的id可以換成name,class或其他屬性;

(2)如果屬性沒有值,則可以通過定位父級屬性定位,如://span[@id='kw']/input[1],或者說可以通過父級和父級的父級同時去定位://dev[id='kw']/span[id='pt']/input[1]

(3)如果存在input,input[1]的id與input[3]相同,input[2]的name與input[3]相同,三個的class都相同,所以想要定位input[3]就可以通過組來定位,如:

//*[@id='kw' and @name='pf']

driver.findelement(by.xpath(""))

8.css

#表示id

.表示class

父級用》表示,也就是將xpath中的/換成》呈現

driver.findelement(by.cssselector(""))

Selenium 元素定位

ui自動化中元素的定位是最最基本,但也是最讓人頭痛的地方。控制項的動態載入,屬性的動態生成抑或因為開發的懶而造成控制項的識別問題總是自動化測試的噩夢。webdriver作為主流的網頁測試工具提供了非常豐富的識別控制項的方法。這次在寫自動化庫的時候也遇到各種定位問題,著實抓狂了一陣,但最終都解決了。雖...

selenium元素定位

單數形式 複數形式,返回的是乙個列表 使用範圍 a.元素有id屬性 b.id不是動態的,為固定值 driver.find element by id id屬性值 使用範圍 a.元素有id屬性 b.id不是動態的,為固定值 語法 driver.find element by name name屬性值 ...

selenium元素定位

一,元素定位方式 from selenium import webdriver from selenium.webdriver.support import expected conditions as ec import time driver webdriver.chrome driver.ge...