开发者学堂课程【DAO 开发实战业务分析:业务测试(使用主方法测试)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/399/detail/5169
业务测试(使用主方法测试)
内容介绍:
一、业务测试的重要性
二、客户端测试
三、总结
一、业务测试的重要性
在实际的的开发之中,如果要进行项目的分工开发,理论上是需要有一个业务设计人员的,但是这个业务设计人员需要保证所设计出来的业务一定是真实可用的,保证代码在整个业务流程过程中不会出现问题。那么就必须对业务进行测试。
二、客户端测试
(1)定义
编写个测试类,而后对程序的功能看能否正常完成做一个测试。
(2)范例:测试数据增加
通过 test.main 及 TestMemberAdd 来实现,如下:
package cn.mldn.test.main;
public class TestMemberAdd {
public static void main(String[ ] args) throws Exception {
Member mem = new Member() ;
mem.setMid(“dahuang”) ;
mem.set(“110”) ;
mem.setAge(-20) ;
mem.setName(“黄司令“) ;
mem.setBirthday(new Date()) ;
mem.setNote("不是什么好人的烂人。”) ;
IMemberService service = ServiceFactory.getInstance(MemberServiceImpl.class);
System.out.println(service.add(mem)) ;
//此方法是要抛异常的
}
}
程序再一次执行,得到的结果为 true。如果将代码再一次执行,得到的结果则是false 。因为现在的数据存在,但整个代码理论上应该多抛些异常,而现在没有抛多异常。将整个代码中多存些数据,如下:
public static void main(String[ ] args) throws Exception {
Random rand = new Random() ;
Member mem = new Member() ;
mem.setMid(“dahuang – “ + rand.nextInt(1000)) ;
mem.set(“110 – “ + rand.nextInt(1000)) ;
然后将新的程序进行多次执行,会得出29行结果,接下来进行测试分页查询。
(3)范例:测试分页查询
之所以在进行分页查询列表的时候,要判断没有值是为了防止性能下降。因为column 没有值是查询不了的,keyWord 也同理。
找到 testMember,跟上 testMemberlist,如下:
package cn.mldn.test.main;
import java.util.Map;
import cn.mldn.oracle.factory. ServiceFactory
import cn.mldn.oracle.service.IMemberService;
import cn.mldn.oracle.service.impl.MemberServiceImpl;
public class TestMemberList {
public static void main(String[ ] args) throws Exception {
IMember Serviceservice = ServiceFactory.getInstance(MemberServiceImpl);
service.list(column,keyWord,currentPage,lineSize);
转化为
service.list(“name“,”黄司令“,1,10);
再转化为
Map<String,Object>map = service.list(“name“,”黄司令“,1,10);
再跟上
long count = (Long) map.get(“memberCount”) ;
}
}
执行以上代码,得出总数据量为29条。而后找到数据,跟上
List<Member> all = (List<Member>)map.get(“allMembers”);
再跟上
Iterator<Member> iter = all. iterator() ;
while (iter.hasNext()) {
System.out.println(iter.next());
三、总结
代码执行后可得出分页后的数据。因此这一切的操作可以证明这两个功能是通过的。而后可已按照同样的方式来进行其它代码的测试与处理。这种测试是最简单的测试,而通常的代码测试都要求自动完成,而这种测试代码没法自动处理。