2012-02-02 200 views
3

我已經使用硒2創建了測試,我還使用硒獨立服務器來運行測試。硒測試有時會失敗,有時會通過

問題是,如果我運行一個測試,它的工作。如果我運行多個測試,其中一些失敗。如果我嘗試然後運行失敗的測試,它就會起作用。

測試是否可以在線程上運行? 我已經使用NUnit GUI和TeamCity來運行測試...都給出相同的結果:不同的測試失敗,再次運行,其他測試失敗。

有什麼想法?

編輯

測試不應該依賴於彼此。數據庫被清空並重新填充每個測試。 我想唯一的問題可能是數據庫沒有正確清空......但如果我多次運行相同的測試,它也應該失敗。

EDIT2

測試失敗,出現 「未找到元素」。 我會嘗試添加一個「WaitForElement」,每隔幾毫秒重試一次,也許這會修復它。

+0

測試的性質是什麼?他們線程安全嗎?彼此依賴? – Randy 2012-02-02 16:57:12

回答

3

不知道被拋出的確切錯誤難以說出。片狀的正常原因往往是等待時間沒有設置到適當的時間,或者Web服務器無法處理那麼多的請求。

如果數據庫與網絡服務器位於同一臺機器上,爲什麼它不在構建盒中,則可以密集清除它。

我會建議仔細檢查每一個錯誤,併爲此做出防彈,然後轉移到下一個。我知道那些在那裏跑步的人總是沒有片面地測試,所以它肯定是一種可以排序的環境因素。

+0

感謝您的回答,測試失敗,出現「找不到元素」 – sirrocco 2012-02-03 09:51:08

+0

然後,您的測試對於正在加載的頁面運行得太快。 – AutomatedTester 2012-02-03 11:52:13

+0

有沒有辦法在全球範圍內增加延遲?在硒? – sirrocco 2012-02-03 12:03:08

1

我知道我在這裏參加派對有點遲,但是您使用單個窗口來運行測試嗎?我有一個類似的問題,因爲我測試的站點只有一個頁面加載事件,所以等待元素或暫停測試變得非常狡猾,我每次都有不同的測試通過。除非我爲每個測試打開一個新的「乾淨」瀏覽器,否則添加大量的等待時間根本不起作用。測試確實變慢了,但它工作。

相關問題