2012-03-21 68 views
5

我使用Selenium IDE Firefox插件來創建一些測試用例。我點擊錄製按鈕來記錄這些步驟。當我完成後,我停止錄製,並運行測試用例,看看事情進展如何。在HTML表格中的這一個特定元素中,Selenium在記錄過程中標識爲id=my_id_1;當我運行測試用例時,它會說元素id=my_id_1未找到。Selenium元素即使Selenium填充ID也沒有找到

如何在Selenium IDE中檢測到ID時找不到它?我怎樣才能解決這個問題?我也嘗試過使用//tr[4]/td[3]/a。使用這種方法(並使用ID),當我單擊IDE中的查找按鈕時,網頁上的相應項目將以黃色突出顯示。但是,測試用例會失敗,說元素找不到。

由於提前, 蒙

+0

您確定該命令在頁面實際加載之前未被執行嗎? – 2012-03-21 23:07:45

回答

7

在Selenium嘗試查找元素之前嘗試在問題命令之前暫停以查看它是否未完全加載。如果解決了問題,則可以用更強大的等待條件替代暫停。

+0

非常感謝。我在命令前執行了一個ClickAndWait命令,並且執行了這個技巧。 – 2012-03-26 21:33:59

+1

+1,我遇到了同樣的問題,並在暫停中添加了解決問題。 – Tim 2012-06-07 12:43:27

0

有可能是你將被重定向到不同的頁面,命令執行之前,所以你得到元素沒有發現錯誤,你可以執行命令前加上暫停的情況下,或者如果不是這種情況,請嘗試通過名稱,值或Xpath來定位元素,而不是ID

-1

在IDE的慢速模式下運行您的測試。

0

也許它是每次都創建一個新的ID。因此,你可以做的是給出一個正則表達式,就像我在下面使用的那個。

//form[@id='adminLogin']/div/div[4]/input 

試試吧。這對我有效。