我正在使用glassfish應用程序服務器。我需要編寫一些servlet的junit。我的問題是如何創建模擬容器,模擬請求和響應與核心Java庫或我需要在這裏使用某種工具?任何指針會有幫助嗎?爲servlet編寫JUNIT?
0
A
回答
4
由於hvgotcodes筆記,這是完全有可能編寫servlet的JUnit測試。但我建議你在這樣做之前仔細思考。
Servlet是HTTP請求偵聽器;他們在一個servlet容器中運行,響應任何來自他們的HTTP請求,並將結果打包回發送。我認爲這就是他們應該做的。真正的工作最好留給servlet可以編組的其他對象。這些可以是POJO,很可能是基於接口的,這將意味着更容易的測試,而不必啓動一個servlet容器來運行測試。如果您決定在非基於Web的設置中需要相同的功能,則很容易,因爲它已經駐留在Servlet以外的對象中。
我會重新考慮設計。把許多功能放在servlet中可能是一個不好的決定。 http://community.jboss.org/wiki/Arquillian -
3
1)它不是一個壞主意,抽象的應用程序邏輯到由該servlet調用,這樣你就可以測試你的業務邏輯從你的servlet交互單獨的對象。
2)Spring提供了一些mock classes for tests,包括請求和響應。即使你不使用Spring,你仍然可以使用這些類來進行測試。
0
你可以從JBoss的有趣發現的Arquillian。
測試容器內!
的Arquillian提供了一種簡單的機制來測試遠程或嵌入容器內或通過作爲容器的一個客戶端進行交互的應用程序代碼。
使命
中的Arquillian項目的使命是提供一個簡單的測試工具,開發人員可以用它來產生了廣泛的爲他們的Java應用程序的集成測試(最有可能的企業應用程序)。測試用例可以在容器內執行,與被測代碼一起部署,或者通過與容器協調,充當部署代碼的客戶端。
相關問題
- 1. 編寫JUnit測試
- 2. 如何在編寫jUnit for web servlet時管理log4j.properties
- 3. 爲JNDI寫Junit
- 4. 如何爲例外編寫Junit
- 5. 無法爲主要方法編寫junit
- 6. 爲JPA存儲庫編寫junit
- 7. 如何爲此代碼編寫junit?
- 8. 如何爲GWT servlet編寫測試?
- 9. 如何編寫JUnit測試?
- 10. 如何編寫init()的junit?
- 11. 如何Junit測試servlet-filters
- 12. Junit和EasyMock Servlet測試
- 13. 如何編寫android jUnit功能測試
- 14. 編寫DAO的Junit測試用例
- 15. 如何正確編寫JUnit測試?
- 16. 編寫JUnit測試來測試一組
- 17. 如何編寫junit測試腳本?
- 18. 編寫JUnit測試案例對Struts
- 19. 編寫Junit測試ServiceMix網絡服務
- 20. 編寫junit測試的良好做法
- 21. 如何在編寫JUnit時使用Runtime.getRuntime()?
- 22. CQ - 編寫服務器端JUnit測試
- 23. 如何編寫junit mokito測試用例
- 24. 協助編寫我的servlet文件編寫器方法
- 25. Junit:爲刪除實體的方法編寫測試?
- 26. JUnit - 如何爲文件解析方法編寫測試?
- 27. 如何爲struts 2 action class編寫junit測試?
- 28. 如何爲下面的類編寫JUnit測試用例?
- 29. 爲更復雜的方法編寫JUnit測試
- 30. 爲SOAP服務編寫JUnit測試的最佳方法
感謝duffymo。但實際上,我只是想知道HTTPunit等servlet測試框架如何創建模擬容器。關於它的一些想法? –