cms06---cms-usr01
来源:互联网 发布:配置数据库镜像 编辑:程序博客网 时间:2024/06/05 23:57
一、搭建环境:
1.1、创建mycms-user的maven项目
1.2、在mycms-parent的父模块中添加子模块(mycms-user)
1.3、在mucms-user的pom.xml中引入父模块
1.4、引入依赖模块mycms-core,就可以获取相应的依赖包
2、Service层
2.1.1、IUserService接口
2.1.2、UserService
2.2、IuserService的方法,即所需功能。
2.2.1、添加用户:包含用户的基本信息, 以及用户角色, 用户组信息
a>IUserService接口中的方法:
b>UserService中的具体实现:
2.2.2、删除用户
a>IUserService接口中定义的方法
/** * 删除用户, 注意要先在t_user_role,t_user_group中将用户和角色,已经组的对应关系删除。<br> * 如果用户存在相应的文章,不能够删除 * @param uid */ public void delete(int uid);
b>UserService的具体实现。
2.2.3更新用户
a>IUserService接口中定义的方法
/** * 更新用户信息:<br> * 如果用户的角色已经存在, 不用操作;<br> * 如果rids中的角色不存在,就要添加;<br> * ruguo用户的角色,不在rids中, 就需要删除。 * @param user * @param rids * @param gids */ public void update(User user, int[] rids, int[] gids);
b>UserService的具体实现:
2.2.4、用户状态的管理, 如果当前状态是启用, 点击就变成了停用
a>IUserService接口中定义的方法
/** * 更新用户状态 */ public void updateStatus();
b>UserService的具这里写代码片
体实现:
2.2.5、列表,显示用户的所有信息
a>IUserService接口中定义的方法
/** * 更新用户状态 */ public void updateStatus();
b>UserService的具体实现:
2.2.6、显示用户的信息
a>IUserService接口中定义的方法
/** * 在用户列表中点击一个用户,可以显示用户的信息。 * @param uid */ public void LoadUser(int uid);
b>UserService的具体实现:
三、使用EasyMock进行测试
详细的使用方法可以参照:EasyMock 使用方法与原理剖析
3.1、设置test-beans.xml文件。
Bean不在是通过Spring到制定的包去寻找Annotation, 而是通过EasyMock创建对象
通过EasyMock.createStrictMock(IUserDao.class)创建对象。
3.2、测试删除用户
3.2.1、使用expectLastCall()捕获上个方法的异常,注意要是void的方法。
3.2.2、使用reply(Mock对象), 也就是test-beans.xml中使用createStrictMock方法创建的bean.
3.2.3、使用verify对实际的测试,验证是否完成。
3.3、测试更新用户状态
3.3.1、注意: test-beans.xml的注入,通动态调用,static。所以需要每次测试进行一次reset(userDao), 使得userDao是一个新的对象。
3.4、测试findUser()
此处由于findUser是有返回值的,所以需要使用expect().addReturn(xx);
3.5、测试add()
就是将所有的Dao操作抽出来测试,
有返回值的, 如果需要判断对象不存在, 设置andReturn(null)
3.5.1、对象存在,抛出异常
阅读全文
0 0
- cms06---cms-usr01
- cms
- CMS
- CMS
- CMS
- CMS
- CMS
- CMS
- cms
- CMS
- CMS
- CMS
- CMS
- cms
- CMS
- cms
- cms
- cms
- 算法笔记C/C++之基本数据类型
- android 系统控件篇---spinner
- Using smart pointers for class members
- 困扰已久的运行时粒子缩放问题:Unity3D研究院之运行时修改粒子特效镜像以及缩放
- HTTP协议详解
- cms06---cms-usr01
- indexof()的使用方法
- htons函数:将主机的无符号短整形数转换成网络字节顺序。
- 动作标签与指令标签
- 做作业还是不要装逼。呜呜,知错了。谁能知道这个小小的问题浪费了我多少时间。一个上午的努力!!!
- 微信小程序学习笔记(一)
- max min
- 列表控件ListView与下拉列表Spinner
- inet_addr