2009-11-05 260 views
2

我最近開始學習Java Web開發,我想學習/理解:如何測試java代碼?

  1. 什麼是好的Java測試好?例如,如果有後端java代碼驗證來自表單的用戶輸入,然後插入到db表中,那麼相應的測試代碼應該是什麼樣子?

  2. 像TestNG,JUnit等測試框架如何適合java代碼測試過程?

謝謝。

+1

我強烈建議您將此作爲社區維基,或者直接搜索「java測試」,因爲我的字面意思是數百個相關匹配。 – 2009-11-05 14:34:26

+0

我會將它分成2個問題,因爲上面有兩個不同的部分 – 2009-11-05 14:37:34

回答

8

這是一個很大的話題......您可能想要取得或下載「使用JUnit進行語義單元測試」(http://pragprog.com/titles/utj/pragmatic-unit-testing-in-java-with-junit)的副本,它涵蓋了您要查找的內容。

此外,JUnit(http://junit.org)網站應該是一個很好的起點。

祝你好運。

+1

考慮到這樣一個廣泛的問題,我認爲這些「入門工具包」實用書架書籍的初學者到中等水平方法恰到好處。 – Jonik 2009-11-05 14:46:11

+0

感謝您推薦「使用JUnit進行語義單元測試」,這是對單元測試和JUnit本身的主題的一個很好的介紹 - 最重要的是,它回答了我原文中的問題。但是,爲了更深入地瞭解測試和JUnit,看起來「JUnit in Action」是一個不錯的選擇。 – Dan 2009-11-17 02:13:00

4

我敢說JUnit是當今最流行的Java測試框架。周圍有相當多的資源。首先,有一本名​​爲JUnit in Action的書,它也涵蓋了servlet(web)測試。然後有很多online resources來學習如何對JUnit進行測試的servlet。

關於實際測試:最好的做法是測試完整的請求 - 響應週期以及週期中涉及的各個步驟。這聽起來有點乏味,但它也取決於業務需求,您需要測試哪些用例。

0

如果您真的想開始使用Java單元測試進行Web開發,您可能需要查看Appfuse/Appfuse 2項目,它們都是基於Java的,並且都有大量的教程來幫助您入門。

Appfuse爲您生成預安裝項目,以便您瞭解它如何組合在一起並運行。此外,它允許您從您選擇的某些框架中選擇進行Web開發,並將其與JUnit集成在一起。

雖然被警告說項目有點舊,即使如此,這也是開始學習單元測試的好方法。

0

我會從JUnit開始。谷歌使用它的一些例子。保持你的方法小。

ECLEmma是一個有用的Eclipse插件,用於監控測試覆蓋率。

0

eclipse的jUnit插件非常有用,metrics軟件包將分析代碼覆蓋率,並查看哪些代碼已經過測試以及需要測試哪些代碼。還分析通過您的程序不同的路徑,如果需要快速測試您的代碼是非常有用的...

0

如果您開始學習Java,Junit更直接,更簡單:TestNG具有更多功能,但也許是更復雜的。