EasyMock應用文章收集 二

2021-09-02 17:19:21 字數 1510 閱讀 7481

easymock教程-easymock的典型使用

關於easymock的典型使用方式,在easymock的官網文件中,有非常詳盡的講解,文件位址為 文件的開頭一部分內容都是easymock中最基本的使用介紹,雖然是英文,但是非常容易看懂,適用新學者入門。

這裡只羅列一些簡單的常用功能,依然以前面教程中使用到的測試案例為例:

public class userserviceimpltest extends assert

}這段簡短的**中包含以下easymock的功能:

1. 建立mock物件

userdao userdao = easymock.createmock(userdao.class);

2. 記錄mock物件期望的行為

easymock.expect(userdao.getbyid("1001")).andreturn(expecteduser);

這裡記錄了mock物件的行為:getbyid()方法被呼叫,呼叫次數為1(easymock之中如果沒有明確指出呼叫次數,預設為1),引數為"1001",expecteduser將作為返回值。

3. 進入replay階段

easymock.replay(userdao);

4. 對mock物件執行驗證

easymock.verify(userdao);

對上面上面的**稍加改動以展示easymock的其他基本功能

1. 指定期望的呼叫次數

easymock.expect(userdao.getbyid("1001")).andreturn(expecteduser).times(3);

2. 指定丟擲期望的異常

easymock.expect(userdao.getbyid("1001")).andthrow(new runtimeexception("no user exist"));

3. 記錄void 方法的行為

[color=red][i][b] easymock.expect(userdao.getbyid("1001")) 這樣的用法只能使用與mock物件的有返回值的方法,如果mock物件的方法是void,則需要使用expectlastcall():[/b][/i][/color]

userdao.somevoidmethod();

easymock.expectlastcall();

和easymock.expect(***)一樣,同樣支援指定呼叫次數,丟擲異常等:

easymock.expectlastcall().times(3);

easymock.expectlastcall().andthrow(new runtimeexception("some error"));

4. 靈活的引數匹配

easymock.expect(userdao.getbyid(easymock.isa(string.class))).andreturn(expecteduser);

類似的還有anyint(),anyobject(), isnull() , same(), startswith()等諸多實現。

DataGrid 應用文章

1 datagrid動態模板列更新資料並且分頁的例子 2 datagrid動態新增模板列的乙個例子 3 datagrid實現增刪 帶提示 改和分頁 4 怎麼在繫結後動態改變datagrid中的內容 5 怎麼為datagrid中的鏈結設定多個引數 6 datagrid實現自增列 單選 多選 8 dat...

Iscroll應用文件

iscroll是乙個非常不錯的區域滑動外掛程式。不過它有個小小的不足,就是它的說明文件。全英文不說,整理的也不咋好,官網上看著很亂,不容易查閱。因此上網找了一些相關的文件說明並加以整理。iscroll 提供的呼叫方法 destroy 顧名思義,是用來銷毀你例項化的iscroll 例項,包括之前繫結的...

asterisk 的應用文摘

在freepbx中,有多處需要設定dial rules,設定規則如下 x代表乙個0 9中的任意乙個數字 z代表乙個1 9中的任意乙個數字 n代表乙個2 9中的任意乙個數字 1237 9 匹配括號內的任何數字或字母 在這個例子中匹配1,2,3,7,8,9 萬用字元,匹配乙個或多個字元 不允許在 或 之...