2011-07-18 21 views
1

我怎樣才能點擊按鈕模式名稱在id如何使用硒點擊由6位數字生成的名稱的按鈕?

[u<6digits>_3] //?
例如:
u123456_3
硒是否支持具有該能力的任何成員? 您可以在登錄Facebook時看到它。

+0

有非靜態的標識符名稱是UI自動化(和潛在的輔助工具)非常糟糕。聽起來像一個在製作中的可訪問性錯誤... –

回答

3

如果ID自動生成的,你不應該使用它的硒,因爲你不能假設它會始終是相同的(也許他們下一次重新啓動服務器,或者如果你從一個負載在不同的服務器平衡器生成的ID是不同的)

嘗試使用元件的另一屬性,如類或名稱,使用XPath通常可以定義一個方法來識別的元件,而不必使用id。

this link您可以檢查它是如何工作的。

1

的正則表達式,我會用JavaScript注入和getElementByTagName得到的按鈕。從那裏開始,將它們的ID與正則表達式進行匹配,並將匹配的ID返回給Selenium供您使用。但是,如果你不能使用正則表達式,CSS支持以屬性開始和結束,並且類似於css = button [id^=「u」] [id $ =「_ 3」]的定位器可能會工作。