小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

EasyMock實(shí)踐指南

 Long_way 2007-05-08

EasyMock實(shí)踐指南

 

EasyMock是個(gè)mock框架,用于動(dòng)態(tài)產(chǎn)生mock對(duì)象,mock對(duì)象主要是用來模擬真實(shí)環(huán)境中的對(duì)象,原理上你應(yīng)該為每個(gè)被依賴的接口準(zhǔn)備mock對(duì)象,但那樣實(shí)在太麻煩,無端的會(huì)產(chǎn)生很多mock類,所以EasyMock派上用場(chǎng)了!注意EasyMock2.0不能為非接口產(chǎn)生mock對(duì)象

 

EashMock的使用模式

1)記錄

   mockobj.someMethod();

2) 如果該方法有返回值,那么必須使用

    EasyMock.expectLastCall().andReturn(xxxx);(不一定非得用這句話,但一定要有返回      值)    xxx為被mock對(duì)象的someMethod()方法的期望返回值

 

3)回放(用于激活mock對(duì)象)

    EasyMock.replay(mockobj);

 

實(shí)例如下:

 

package moxtv.central.service.impl;

 

import java.util.ArrayList;

import java.util.HashSet;

import java.util.List;

import java.util.Map;

import java.util.Set;

 

import junit.framework.TestCase;

import moxtv.central.dao.UploadMachineDao;

import moxtv.central.dao.UploadMachineJDBCDao;

import moxtv.central.po.UploadServer;

 

import org.easymock.EasyMock;

 

/**

* 上傳機(jī)管理測(cè)試集.

*

* @author weip

* @time 2006-3-30 10:06:09

*

*/

public final class UploadMachineServiceTest extends TestCase {

 

/**

* 要測(cè)試的類.

*/

private UploadMachineServiceImpl uploadMachineService;

 

/**

* 測(cè)試對(duì)象依賴的對(duì)象

*/

private UploadMachineDao mockUploadMachineDao;

 

/**

* 測(cè)試對(duì)象依賴的對(duì)象

*/

private UploadMachineJDBCDao mockUploadMachineJDBCDao;

 

/**

*

* @param name

*

 

 

String

*/

public UploadMachineServiceTest(final String name) {

super(name);

}

 

/**

*

* @author weip

* @time 2006-3-30 10:10:18 (non-Javadoc)

* @see junit.framework.TestCase#setUp()

* @throws Exception

*

 

 

a

*

*/

protected void setUp() throws Exception {

super.setUp();

 

mockUploadMachineDao = (UploadMachineDao) EasyMock

.createMock(UploadMachineDao.class);

 

mockUploadMachineJDBCDao = (UploadMachineJDBCDao) EasyMock

.createMock(UploadMachineJDBCDao.class);

 

uploadMachineService = new UploadMachineServiceImpl();

 

uploadMachineService.setUploadMachineDao(mockUploadMachineDao);

 

uploadMachineService.setUploadMachineJDBCDao(mockUploadMachineJDBCDao);

 

}

 

/*

* protected void tearDown() throws Exception { super.tearDown(); }

*/

 

/**

* 測(cè)試登陸上傳機(jī)管理首頁.

*

* @author weip

* @throws Exception

*

 

 

a

* @time 2006-3-30 10:20:14

*/

public void testLoadMainPage() throws Exception {

 

UploadMachineVO vo = new  UploadMachineVO ();

 

mockUploadMachineDao.query(vo );

 

EasyMock.expectLastCall().andReturn(new ArrayList());

 

mockUploadMachineDao.getTotalMachineCount();

 

EasyMock.expectLastCall().andReturn(new Integer(6));

 

EasyMock.replay(mockUploadMachineDao);

 

Map map = uploadMachineService.loadMainPage(vo );

 

assertNotNull(map);

 

assertNotNull(map.get("list"));

 

List list = (List) map.get("list");

 

assertEquals(0, list.size());

 

Integer sum = (Integer) map.get("sum");

 

assertNotNull(sum);

 

assertEquals(6, sum.intValue());

 

}

 

/**

* 測(cè)試獲取上傳機(jī)詳情.

*

* @author weip

* @throws Exception

*

 

 

a

* @time 2006-3-30 11:14:33

*/

public void testGetMachine() throws Exception {

 

int serverId = 1;

 

mockUploadMachineDao.getMachine(serverId);

 

UploadServer us = createUploadServer();

 

EasyMock.expectLastCall().andReturn(us);

 

EasyMock.replay(mockUploadMachineDao);

 

UploadServer machine = uploadMachineService.getMachine(serverId);

 

assertEquals(1, machine.getId().intValue());

 

}

 

/**

* 測(cè)試添加上傳機(jī).

*

* @author weip

* @throws Exception

*

 

 

a

* @time 2006-3-30 10:09:42

*/

public void testAddMachine() throws Exception {

 

UploadServer server = createUploadServer();

 

mockUploadMachineDao.addMachine(server);

 

EasyMock.replay(mockUploadMachineDao);

 

uploadMachineService.addMachine(server);

 

EasyMock.verify(mockUploadMachineDao);

 

}

 

/**

* 測(cè)試刪除上傳機(jī).

*

* @author weip

* @throws Exception

*

 

 

a

* @time 2006-3-30 10:55:28

*

*/

public void testDeleteMachines() throws Exception {

 

 

int[] serverids = new int[] {1 };

 

mockUploadMachineJDBCDao.deleteMachines(serverids);

 

EasyMock.replay(mockUploadMachineJDBCDao);

 

uploadMachineService.deleteMachines(serverids);

 

EasyMock.verify(mockUploadMachineJDBCDao);

 

 

}

 

/**

* 測(cè)試修改上傳機(jī).

*

* @author weip

* @throws Exception

*

 

 

a

* @time 2006-3-30 11:10:48

*/

public void testUpdateMachine() throws Exception {

 

mockUploadMachineDao.getMachine(1);

 

UploadServer destus = createUploadServer();

 

EasyMock.expectLastCall().andReturn(destus);

 

EasyMock.replay(mockUploadMachineDao);

 

UploadServer srcus = createUploadServer();

 

uploadMachineService.updateMachine(srcus);

 

EasyMock.verify(mockUploadMachineDao);

 

}

 

/**

* @author weip

* @time 2006-4-7 9:12:09

* @return UploadServer

*/

private UploadServer createUploadServer() {

UploadServer us = new UploadServer(new Integer(1));

Set set = new HashSet();

us.setDiskSet(set);

return us;

}

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多