{
mockDao = null;
business = null;
super.tearDown();
}
public void testOperate()
{
ArrayList stubList = new ArrayList();
stubList.add("test");
// 定義Mock劇本
mockDao.eXPects(once())// 期待次數
.method("execute")// 調用方法
.with(eq("select * from tbl_test"))// 傳入參數等于
.will(this.returnValue(stubList));// 返回對象
Dao dao = (Dao) mockDao.proxy();
business.setDao(dao);
assertEquals(business.operate(), "test");
}
}
在工程中導入jmock-1.0.1.jar ,jmock-cglib-1.0.1.jar ,cglib-full-2.0.jar 三個jar包,然后在JUnit中執行BusinessTest.java,會顯示綠棒,這樣,在沒有數據庫的情況下,單元測試成功。
使用JMock模擬類的條件:
1、要有無參數的構造器;
2、構造器是public;
文章來源于領測軟件測試網 http://www.kjueaiud.com/