addRequestParameter("method", "doAdd");
addRequestParameter("pageId", "1");
addRequestParameter("dpname","測試部門");
addRequestParameter("dptype","測試部門");
addRequestParameter("yn","n");
//執行action
actionPerform();
//驗證返回的forward
verifyForward("success");
}
3. 主要函數和作用:
- setContextDirectory,設置web應用的根
- setRequestPathInfo,設置request的請求
- addRequestParameter,將參數和對應的值加入request中
- actionPerform,執行這個請求
- verifyForward,驗證forward的名字是否正確
- verifyForwardPath,驗證forward的path是否正確
- verifyNoActionErrors,驗證在action執行過程中沒有ActionError產生
- verifyActionErrors,驗證在action執行過程中產生的ActionError集合的內容
具體詳細的內容請參見對應的javaDoc。
4. 測試Tile。其基本過程與上面類似,不同之處在于驗證:使用verifyTilesForward和verifyInputTilesForward。
5. 測試子模塊。其基本過程也和上面一樣,不同之處在于需要指定該模塊所需要使用的struts-config.xml和調用方式:
- 首先,指定所需要的struts-config.xml:
setConfigFile("mymodule","/WEB-INF/struts-config-mymodule.xml");
- 其次,指明調用的路徑:
setRequestPathInfo("/mymodule","/login.do");
檢查表
使用StrutsTest需要注意的地方:
- 在TestCase中可以訪問request、session等對象,StrutsTest為我們提供了訪問接口。
- junit的assert函數和fail函數都可以在StrutsTest中使用。
- 對于文件上載,目前StrutsTest并沒有什么特別好的方案。具體參見StrusTest的Faq。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/