在selenium中使用css選擇器進行元素定位

2021-08-21 01:20:40 字數 1918 閱讀 6749

通用元素選擇器,匹配任何元素

e標籤選擇器,匹配所有使用e標籤的元素

.info

class選擇器,匹配所有class屬性中包含info的元素

#footer

id選擇器,匹配所有id屬性等於footer的元素

e,f多元素選擇器,同時匹配所有e元素或f元素,e和f之間用逗號分隔

e f後代元素選擇器,匹配所有屬於e元素後代的f元素,e和f之間用空格分隔

e > f

子元素選擇器,匹配所有e元素的子元素f

e + f

毗鄰元素選擇器,匹配緊隨e元素之後的同級元素f (只匹配第乙個)

e ~ f

同級元素選擇器,匹配所有在e元素之後的同級f元素

e[att='val']

屬性att的值為val的e元素 (區分大小寫)

e[att^='val']

屬性att的值以val開頭的e元素 (區分大小寫)

e[att$='val']

屬性att的值以val結尾的e元素 (區分大小寫)

e[att*='val']

屬性att的值包含val的e元素 (區分大小寫)

e[att1='v1'][att2*='v2']

屬性att1的值為v1,att2的值包含v2 (區分大小寫)

e:contains('***x')

內容中包含***x的e元素

e:not(s)

匹配不符合當前選擇器的任何元素

匹配css=div

css=div.formdiv

css=#recordlist

css=ul#recordlist

e:eq(n)

在其父元素中的e子元素集合中排在第n+1個的e元素 (第乙個n=0)

e:first

在其父元素中的e子元素集合中排在第1個的e元素

e:last

在其父元素中的e子元素集合中排在最後1個的e元素

e:even

在其父元素中的e子元素集合中排在偶數字的e元素 (0,2,4…)

e:odd

在其父元素中的e子元素集合中排在奇數的e元素 (1,3,5…)

e:lt(n)

在其父元素中的e子元素集合中排在n位之前的e元素 (n=2,則匹配0,1)

e:gt(n)

在其父元素中的e子元素集合中排在n位之後的e元素 (n=2,在匹配3,4)

e:only-child

父元素的唯一乙個子元素且標籤為e

e:empty

不包含任何子元素的e元素,注意,文字節點也被看作子元素

匹配css=ul > li:nth(0)

catcss=ul > *:nth(0)

css=ul > :nth(0)

heading

css=ul > li:first

catcss=ul > :first

heading

css=ul > *:last

css=ul > li:last

goat

css=ul > li:even

cat, car

css=ul > li:odd

dog, goat

css=ul > :even

heading

css=ul > p:odd

[error] not found

css=ul > li:lt(2)

catcss=ul > li:gt(2)

goat

css=ul > li:only-child

css=ul > :only-child

css=ul > *:only-child

[error] not found

(ul沒有only-child)

css=div.subdiv > :only-child

在selenium中使用JQuery

selenium的xpath確實功能不夠強大啊,還是喜歡用jquery.今天嘗試了一下,其實是可以在selenium中用jquery來分析dom的.執行以下步驟 1.把jquery的js檔案新增到selenium server.jar的 core scripts目錄下.2.修改selenium se...

在 CSS 中使用特徵查詢

本文講的是在 css 中使用特徵查詢,譯文出自 掘金翻譯計畫 譯者 cherry 校對者 leviding h2o 2 supports display grid supports display grid asideborder radius 1emp first letterinitial le...

在flex中使用CSS改變控制項樣式

昨天在搞乙個對話方塊的外觀 使用css搞定 http www.riashanghai.com node 7這篇文章對我幫助很大 心得寫一下,自己留著好看 需要乙個css檔案,例如default.css 在mxml中需要使用 進行 對控制項進行繫結 例如 控制項 mybutton 需要在default...