少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

          //這里是測試UserDao userDao=EasyMock.createMock(UserDao.class);這種形式的:

          package com.abin.lee.mock;

          public class User {
           private int id;
           private String userName;
           private String passWord;
           public int getId() {
            return id;
           }
           public void setId(int id) {
            this.id = id;
           }
           public String getUserName() {
            return userName;
           }
           public void setUserName(String userName) {
            this.userName = userName;
           }
           public String getPassWord() {
            return passWord;
           }
           public void setPassWord(String passWord) {
            this.passWord = passWord;
           }
          }




          package com.abin.lee.mock;

          public interface UserDao {
           User query(String id);
          }




          package com.abin.lee.mock;

          public class UserDaoImpl implements UserDao{

           public User query(String id) {
            User user=null;
            if(id.equals("1")){
             user=new User();
             user.setId(1);
             user.setUserName("abin1");
             user.setPassWord("varyall1");
            }
            if(id.equals("2")){
             user=new User();
             user.setId(2);
             user.setUserName("abin2");
             user.setPassWord("varyall2");
            }
            return user;
           }

          }





          package com.abin.lee.mock;

          public interface UserService {
           User query(String id);
          }




          package com.abin.lee.mock;

          public class UserServiceImpl implements UserService{
           private UserDao userDao;
           public User query(String id){
            return this.userDao.query(id);
           }
           
           public UserDao getUserDao() {
            return userDao;
           }

           public void setUserDao(UserDao userDao) {
            this.userDao = userDao;
           }
           
          }





          測試代碼:

          package com.abin.lee.mock;

          import org.easymock.EasyMock;
          import org.junit.Assert;
          import org.junit.Test;

          public class UserMock {
           @Test
           public void test(){
            User expectedUser=new User();
            expectedUser.setId(1);
            expectedUser.setUserName("abin1");
            expectedUser.setPassWord("varyall1");
            UserDao userDao=EasyMock.createMock(UserDao.class);
            EasyMock.expect(userDao.query("1")).andReturn(expectedUser);
            EasyMock.replay(userDao);
            UserServiceImpl service=new UserServiceImpl();
            service.setUserDao(userDao);
            User user=service.query("1");
            Assert.assertNotNull(user);
            Assert.assertEquals(1, user.getId());
            Assert.assertEquals("abin1", user.getUserName());
            Assert.assertEquals("varyall1", user.getPassWord());
            EasyMock.verify(userDao);
           }
          }





          測試方法2:

          package com.abin.lee.mock;

          import org.easymock.EasyMock;
          import org.easymock.IMocksControl;
          import org.junit.Assert;
          import org.junit.Test;

          public class UsersMock {
           @Test
           public void test(){
            User expectedUser=new User();
            expectedUser.setId(2);
            expectedUser.setUserName("abin2");
            expectedUser.setPassWord("varyall2");
            IMocksControl mock=EasyMock.createNiceControl();
            UserDao userDao=mock.createMock(UserDao.class);
            EasyMock.expect(userDao.query("2")).andReturn(expectedUser);
            mock.replay();
            UserServiceImpl service=new UserServiceImpl();
            service.setUserDao(userDao);
            User user=service.query("2");
            Assert.assertNotNull(user);
            Assert.assertEquals(2, user.getId());
            Assert.assertEquals("abin2", user.getUserName());
            Assert.assertEquals("varyall2", user.getPassWord());
            mock.verify();
            mock.resetToNice();
            
           }

          }


          posted on 2012-11-27 22:40 abin 閱讀(538) 評論(0)  編輯  收藏 所屬分類: easyMock
          主站蜘蛛池模板: 十堰市| 平顺县| 海安县| 施秉县| 宾川县| 丰城市| 托克逊县| 德江县| 陈巴尔虎旗| 嵩明县| 股票| 德钦县| 区。| 徐水县| 青田县| 富顺县| 遂平县| 聂拉木县| 武隆县| 永川市| 偏关县| 卢龙县| 涪陵区| 灌南县| 兴和县| 营山县| 通河县| 栖霞市| 伊宁县| 周至县| 玉环县| 泸定县| 克什克腾旗| 通道| 荥阳市| 浦北县| 美姑县| 洛川县| 嵊泗县| 武宁县| 郓城县|