锘??xml version="1.0" encoding="utf-8" standalone="yes"?>在线小视频网址,97国产精品,亚洲热apphttp://www.aygfsteel.com/sanwish/category/35804.htmlby sanwishzh-cnFri, 07 Nov 2008 17:56:45 GMTFri, 07 Nov 2008 17:56:45 GMT60- 錛堣漿錛夋墜鎶婃墜鏁欎綘濡備綍浣跨敤EasyMockhttp://www.aygfsteel.com/sanwish/archive/2008/11/07/239161.htmlsanwishsanwishFri, 07 Nov 2008 01:56:00 GMThttp://www.aygfsteel.com/sanwish/archive/2008/11/07/239161.htmlhttp://www.aygfsteel.com/sanwish/comments/239161.htmlhttp://www.aygfsteel.com/sanwish/archive/2008/11/07/239161.html#Feedback0http://www.aygfsteel.com/sanwish/comments/commentRss/239161.htmlhttp://www.aygfsteel.com/sanwish/services/trackbacks/239161.html
鑳屾櫙錛?/font>
EasyMock 2 鐗堟湰蹇呴』瑕?JDK5 鎵嶈兘浣跨敤 EasyMock 1.2 鍙互鍦?JDK 1.4 浣跨敤
涔熷彲浠ヤ嬌鐢?Retrotranslator 灝?EasyMock 2 鐗堟湰鏀逛負 JDK 1.4 涔熷彲浠ヤ嬌鐢ㄧ殑銆?br />鐩墠浣跨敤鐨勬槸 EasyMock 2.2
鍑嗗錛?/strong>
鍏堝紕涓帴鍙?Haha 鐢ㄦ潵 Mock 鐨勶紝涓や釜鏂規硶
void haha(String s);
String hehe(String s);
寮濮?Mock錛?/font>
闈欐佸鍏?EasyMock
import static org.easymock.EasyMock.*;
鐒跺悗
Haha haha=createMock(Haha.class);
鏃犺繑鍥炲肩殑璋冪敤鍙互鐩存帴璋冪敤 Mock 鏂規硶
haha.haha("haha");
鏈夎繑鍥炲肩殑鍙互
expect(haha.hehe("hehe")).andReturn("ok");
榪欐牱鍋氬畬鍚?/font>
浣犺 replay(haha); 涓涓嬶紝琛ㄧず褰曞畬 mock 錛屽噯澶囬噸鏀句簡銆?br />
灝卞彲浠ヨ皟鐢?haha.haha("haha") 浜嗭紝鍚屾牱鐨勶紝璋冪敤 haha.hehe("hehe") 鐨勮繑鍥炲兼槸 "ok"
鍏ㄩ儴璋冪敤瀹屼簡錛屼嬌鐢?verify(haha); 鏌ョ湅涓涓嬮鏈熺殑璋冪敤鏄笉鏄兘璋冧簡錛屽鏋滈鏈熻璋冪敤涓嬈★紝鍗存病璋冿紝閭e氨浼?AssertionError 鍝︺?br />
璋冪敤嬈℃暟
涓婇潰榪欎簺閮芥槸榛樿璋冪敤涓嬈★紝灝辯浉褰撲簬 expect(haha.hehe("hehe")).andReturn("ok").times(1); 鎴?expect(haha.hehe("hehe")).andReturn("ok").once();
濡傛灉鎯寵皟鐢ㄤ換鎰忔錛屽氨 expect(haha.hehe("hehe")).andReturn("ok").anyTimes();
濡傛灉鎯蟲渶灝戣皟鐢ㄤ竴嬈★紝灝?expect(haha.hehe("hehe")).andReturn("ok").atLeastOnce();
濡傛灉鎯寵皟鐢?1 鑷?3 嬈★紝灝?expect(haha.hehe("hehe")).andReturn("ok").times(1,3);
棰勬湡鐨勭粨鏋?br />
榪樺彲浠?expect(haha.hehe("hehe")).andReturn("ok").andReturn("ok too").andThrow(new RuntimeException());
榪欐牱錛岀涓嬈¤皟鐢?haha.hehe("hehe") 鏃惰繑鍥?"ok" 錛岀浜屾榪斿洖 "ok too"錛岀涓夋璋冪敤灝辨瘮杈冩儴浜嗭紝浼氭姏鍑轟竴涓?RuntimeException錛岄渶瑕佹敞鎰?/font>
鐨勬槸錛屽鏋滄姏鍑虹殑寮傚父鏄?unchecked 鐨勶紝灝辨槸 Runtime 鐨勶紝灝遍殢渚挎姏錛屽鏋滄槸 checked 鐨勶紝閭e氨涓瀹氳鎶涜繖涓柟娉曞畾涔夌殑錛屽惁鍒欎細鍦?andThrow 榪欒鍑?IllegalArgumentException 銆?br />
緇堟瀬瑙e喅鍔炴硶榪樺彲浠ヤ嬌鐢?andAnswer(IAnswer<T> answer) 浼犱竴涓疄鐜?IAnswer 鎺ュ彛鐨勫疄渚嬶紝榪欎釜鎺ュ彛鍙湁涓涓柟娉?br />T answer() throws Throwable;
闅忎究浣犺繑鍥炰粈涔堬紝鎴栨槸鎶涘嚭浠涔堝紓甯搞?br />
璋冪敤欏哄簭
涓?榪囧涓婇潰鎵璇達紝haha.haha("haha") 涓?haha.hehe("hehe") 鏄病鏈夐『搴忕殑錛屽皢 createMock 鏀規垚 createStrictMock 鎴栧湪 createMock 鍚庨潰鍔犱竴琛?checkOrder(haha,true) 灝卞彲浠ヤ簡錛岃繖鏃訛紝灝變竴瀹氳鎸夌収瀹氫箟鐨勯『搴忔潵璋冪敤浜嗐?br />
濡傛灉澶氫釜涓嶅悓鐨?mock 涔熻淇濊瘉欏哄簭鍛紵閭e氨涓嶈兘浣跨敤 createMock 鏉ュ垱寤鴻繖浜?mock 浜嗭紝鍥犱負姣忔 createMock 閮戒細浣跨敤涓涓柊鐨?IMocksControl 瀹炰緥鏉ュ崟鐙帶鍒惰繖涓?mock 錛屾垜浠笇鏈涘皢澶氫釜 mock 鐢ㄥ悓涓涓?IMocksControl 鎺у埗錛屽彧闇瑕?br />
IMocksControl ctrl = createStrictControl();
Haha haha1= ctrl.createMock(Haha .class);
Haha haha2 = ctrl.createMock(Haha .class);
haha1.haha("haha1");
haha2.haha("haha2");
ctrl.replay();
灝卞彲浠ヤ簡
棰勬湡鐨勫弬鏁?br />
鍒氭墠 haha.haha("haha") 涓殑 "haha" 灝辨槸棰勬湡鐨勫弬鏁幫紝EasyMock 鎻愪緵浜嗗緢澶氶鏈熷弬鏁扮殑鏂規硶錛屾瘮濡?haha.haha(eq("haha"))錛屼笌鍓嶉潰鐨勬柟娉曞姛鑳藉畬鍏ㄤ竴鏍?br />haha.haha((String)anyObject) 闅忎究浣犱紶浠涔堝弬鏁伴兘娌¢棶棰樸?br />haha.haha(not(eq("haha"))) 榪欎釜鍙涓嶄紶 haha 錛屽叾瀹冧粈涔堥兘鎴?br />
鍚?鏍峰彲浠ヨ嚜瀹氫箟錛屽彧瑕佽皟鐢?聽聽聽 public static void reportMatcher(IArgumentMatcher matcher) 鏂規硶錛屽皢鑷畾涔夌殑 IArgumentMatcher 浼犺繘鍘誨氨鍙互浜嗭紝榪欎釜鎺ュ彛鏈変袱涓柟娉?boolean matches(Object argument)聽聽 鍜?void appendTo(StringBuffer buffer) 絎竴涓柟娉曠殑鍙傛暟鏄皟鐢ㄥ疄闄呬紶鍏ョ殑鍊鹼紝榪斿洖鏄惁鍖歸厤錛岀浜屼釜鏂規硶鏄敊璇椂鍚?buffer 涓?append 閿欒淇℃伅銆?br />
灝嗘柟娉曞紕鎴?Stub
Stub 鏂規硶錛屾垜鎯沖簲璇ュ氨鏄殢渚胯皟錛岀埍鎬庝箞璋冨氨鎬庝箞璋冿紝榪斿洖鐨勯兘鏄偅涓鹼紝鏈鍚庝篃涓嶄細楠岃瘉鍒板簳璋冪敤浜嗗灝戞銆?br />濡傛灉鎯蟲妸涓涓柟娉曞紕鎴?Stub錛屾棤榪斿洖鍊肩殑鍙 asStub() 灝辨槸 expect(haha.haha("haha")).asStub() 錛屾湁榪斿洖鍊肩殑灝?andStubReturn() , andStubAnswer() 榪欐牱灝卞彲浠ヤ簡銆?br />
鍙嬪ソ鐨凪ock
鎴戜滑浣跨敤 createMock 鍒涘緩鍑烘潵鐨?mock 瀵硅薄錛屽鏋滄病鏈夊綍榪囷紝璋冪敤榪欎釜鏂規硶閮戒細鍑?AssertionError 錛屼絾濡傛灉浣跨敤 createNiceMock 灝變笉浼氫簡錛屼細榪斿洖 0 , null , false 榪欐牱鐨勩?/font>

]]>
主站蜘蛛池模板:
扬州市|
周宁县|
仁怀市|
洛南县|
定边县|
宣武区|
建阳市|
金堂县|
阿克|
惠安县|
吉首市|
广东省|
玉田县|
锦州市|
兴山县|
祁门县|
栖霞市|
望江县|
南汇区|
牙克石市|
兴隆县|
西畴县|
荆门市|
台安县|
周至县|
嘉兴市|
梅河口市|
永胜县|
扶余县|
资阳市|
定州市|
公安县|
通海县|
寿阳县|
罗山县|
临武县|
蕉岭县|
黄平县|
甘肃省|
陇川县|
九龙县|