2012-04-23 77 views
0

我想知道是否有可能獲得元素的xpath,例如link =「Edit」。Selenium:通過鏈接等屬性獲取元素的xpath

使用硒我可以做到這一點。

說明:

我知道在頁面上有與文本「編輯」的鏈接。所以使用硒,我可以動態地找到它,使得link="Edit",但現在我在我的RC中有這個鏈接,並希望循環它使用它的xpath,這樣我可以在鏈接所在的同一行中獲取內容。

我想在不同的場景和不同的元素中實現這些東西。 我應該能夠使用元素的屬性獲取元素的xpath,id,css。

請幫助,讓我知道是否有可能使用一些java腳本,否則我使用Selenium RC與PHP。如果可能的話,我應該能夠整合東西。

在此先感謝。

+0

後您記錄Selenium IDE的一個動作,它可以讓你選擇類型的選擇器你想用於每個目標..我不知道硒的RC,但它已被正式棄用 - 嘗試切換到Selenium WebDriver,如果可能:)) – Aprillion 2012-04-23 06:34:52

+0

感謝您的答覆,但我動態檢查是否元素出現在表格中的任何條目中,如果鏈接存在,我必須記錄該條目的名稱。那麼有沒有辦法在旅途中獲得xpath? – lAH2iV 2012-04-23 06:59:39

+1

我相信你真正想要的是花一些時間學習[XPath](http://en.wikipedia.org/wiki/XPath)和/或[CSS選擇器](http://en.wikipedia.org/wiki/CSS_selector#語法)以及他們可以做什麼。嘗試谷歌搜索,當然,最深(但仍然非常可讀)的規格:[XPath 1.0](http://www.w3.org/TR/xpath/)和[CSS 2選擇器](http:/ /www.w3.org/TR/CSS2/selector.html)。 – 2012-04-23 10:33:10

回答

1

我不知道「在路上」創建XPath表達式的,但是這是一個XPath等效link="Edit"在硒:

 
//a[contains(text(), 'Edit')]/.. 
+0

謝謝,但這不會幫助我,因爲這會讓我只有鏈接定位器,我將無法獲得與此相同的行中存在的值。 – lAH2iV 2012-04-23 07:43:51

+1

@ lAH2iV如果你的父母是「相同的行」,你可以看到更新後的回答爲相對路徑'/'後面是父母表達式'..' – Aprillion 2012-04-23 07:50:46

+0

:我們的坦克幫助你使用這個'// a [contains(text() ,'編輯')]] /../../ td [3]'我可以得到編輯按鈕出現的位置。再次感謝。所以使用包含我可以得到標籤和按鈕? – lAH2iV 2012-04-23 10:08:51

相關問題