在企圖為 清單 1(間接的是 清單 2)的代碼編寫測試之前,可能想確定實際需要測試什么。在這個具體示例中,邏輯清楚地是為了方便用戶口令的修改;所以,應當編寫至少兩個層次的測試用例:
- 口令修改在數據正確時是否工作?
- 如果數據不正確,口令是不是不 修改?
StrutsTestCase 是一個 JUnit 擴展,專門針對 Struts 應用程序。這個框架實際上模擬了一個 servlet 容器,這樣就能虛擬地運行和測試 Struts 應用程序,而不必在 Tomcat(舉例)中運行它了?蚣苓有一個方便的 MockStrutsTestCase
類,它擴展了 TestCase
并處理許多 Struts 配置方面(例如裝入 struts-config.xml 配置文件)。
MockStrutsTestCase
的事情。也就是說,需要把它指向代表 Web 應用程序的目錄,然后指向必要的 web.xml 和 struts-config.xml 文件。默認情況下,MockStrutsTestCase
掃描這些項目的類路徑;但是,要把 MockStrutsTestCase
配置成在特定環境中工作,操作很簡單,只需覆蓋一些設置并編寫一些特定的配置代碼即可。
返回口令驗證示例,包含 ChangePasswordAction
類的項目有圖 3 所示的目錄結構: