2011-04-20 31 views
3

我使用JUnit和Selenium(1)編寫自動化集成測試。到目前爲止,我已經將它用於幾個項目。Java/JUnit和Selenium RC - 是否有包裝庫?

我發現硒API太低級,並最終編寫通用的「包裝」代碼,來處理像:

  • 檢查表單字段是相同的,因爲他們之前的一些「保存」按鈕被點擊
  • 共享測試
  • 檢查瀏覽器之間的硒實例未示出棧跟蹤
  • 等待元件成爲本(從AJAX調用)

這是編寫自己的測試工具不可避免的一部分嗎?或者有一個包裝庫在某處/我應該打算創建一個?

回答

1

就我個人而言,我認爲Selenium 2是關於瀏覽器自動化框架的正確抽象級別。我同意你的看法,有一些煩人的事情,比如處理等待Ajax調用,這可能會在框架中提供更多的支持,但是在Selenium 2中有一個支持包,當它包含它們時可能包含這些特性。

你提到的其他觀點對我來說似乎就像你不想在覈心框架中使用的項目特定功能。你可以輕鬆地推出適合你的項目(你應該)的自己的框架,或者你可以在互聯網上搜索包含你也覺得有用和調整的東西的項目。舉個例子,我的測試套件是基於這個:http://code.google.com/p/design-of-selenium-tests-for-asp-net/,但是還有很多更高級別的框架(一些超高級的)建立在硒的基礎上,你可以通過搜索找到(http://code.google.com/hosting/search?q=selenium&projectsearch=Search+projects)。

所以是的,我認爲這是不可避免的,但它不應該花費你那麼多的工作。

+0

公平點,謝謝您的回答。請看Selenium 2,應該很快就會出來beta。 – artbristol 2011-04-26 08:43:19

+0

硒2 b3非常穩定,所以我建議你給它一個去。 – 2011-04-27 15:42:26

1

您可以使用頁面對象模式 和windowlicker(使用Selenium 2的Java GUI測試框架)爲應用程序驅動程序創建DSL以實現。

更多的理論和實踐方法見:

http://www.wakaleo.com/blog/279-selenium-2web-driver-the-land-where-page-objects-are-king

http://www.slideshare.net/alimenkou/dsl-page-object-and-selenium-a-way-to-reliable-functional-tests/

http://www.growing-object-oriented-software.com/

溝開發人員可以使用碲自動化測試框架:

http://code.google.com/p/aost/

Tellurium vs Selenium : Compare