1. 程式人生 > >Robot Framework XPATH元素的定位(如何獲取一個動態或具體的元素)

Robot Framework XPATH元素的定位(如何獲取一個動態或具體的元素)

添加 nbsp clas 初學者 提取 一位 驗證 方法 work

前提部分(可略過):對於初學者來說,元素定位的方式相對直接、粗糙一點。比如,用鼠標放在一個字符上點擊右鍵查看元素,或者先點擊F12再查看元素,大多情況下這種方式都是可行的。而我們最需要關註的也是容易阻塞我們進度的,往往是那些不能直接使用鼠標右鍵定位的元素。其實都是xpath的元素定位問題,只是方式不一樣。此時就要去構建元素的表達式或者說是從F12裏提取一些元素進行組建,從而得出一個你可以用來操作的元素。比如:獲取N個元素後,根據下標進行選取你要操作的元素,這時就要進行構建元素的表達式,而不能通過直接鼠標右鍵來獲取元素了。

場景:

有這樣一個添加話費面值功能,需要驗證是否可以添加一批不同的面值並驗證添加的面值是否正確、是否可以刪除。

分析:

添加的面值肯定不能直接通過鼠標右鍵來獲取它的元素,因為這些面值數量不是固定的、也是不同的。

獲取元素的方法(需要獲取“500元”元素):

1、代碼如下:

<div id="tt">...

...

...

<span class=‘tabs-title‘>500元</span>

2、根據代碼分析,“500元”是一個文本,此時應想到用“text”。

3、元素可以這樣表達://span[text()=‘500元‘](註:前面不需要加上“xpath=”)

4、本來可以不需要第四步的,但考慮到頁面上可能不止一個地方有“500元”這樣的字符,所以最好是對第三步的元素表達式進行更多的補全,這樣才能做得更精準的定位元素。

此時,元素可以這樣表達://div[@id=‘tt‘]//span[text()=‘500元‘]

最後附上一位前輩關於XPATH元素定位的詳細解析的文章--(http://www.cnblogs.com/xxyBlogs/p/4244073.html)

我之所以寫得這麽詳細而不是直接提供前輩的文章,主要是為初學者或基礎不是很好的讀者提供參考。

Robot Framework XPATH元素的定位(如何獲取一個動態或具體的元素)