[請教]Junit測試web開發中的ActionBean的業務方法

gltbeyond發表於2007-07-25
Junit測試可以使我們的程式碼建立在一個正確的基礎上。

我們大多做web開發,採用MVC模式,因為我們的ActionBean裡面的callback方法的程式碼Transaction Script, 純過程式的程式碼,都是千行以上的程式碼。

因為業務邏輯的複雜,實現時都使用簡單的條件判斷,維護和新增新業務時,測試是很重要的,實現新的功能,又不能敗壞原來的邏輯。
過程:本地修改,使用log、System.out.println()列印程式軌跡,make後上傳到web伺服器,重啟伺服器,然後模擬各種資料去測試。。。

我們是否可以將ActionBean脫離J2ee容器執行,進行測試? 應該可以。

Junit測試定位在單元測試,
並且要為被測試方法準備必須的環境。
難點就在此,稍微有點規模的MVC框架,都對request的資料進行了封裝,為了測試我們的ActionBean的業務方法,必須模擬ActionBean的執行環境。

在ActionBean的執行環境比較複雜的情況下,我是否可以做個替代類
比如採用Mock代替HttpRequest,只需為請求配置好交易資料,傳遞/注射給ActionBean的方法?

不知道想法是否正確,希望知道的大哥指點下,謝謝。

相關文章