LZ_JUnit测试程序编写规范_第1页
LZ_JUnit测试程序编写规范_第2页
LZ_JUnit测试程序编写规范_第3页
LZ_JUnit测试程序编写规范_第4页
LZ_JUnit测试程序编写规范_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JUnit测试的优缺点:JUnit测试程序编写规范(2006-11-15 15:01:44 分类: Java开发参考 一、 程序命名规范 测试类的命名 测试类的命名规则是:被测试类的类名+Test比如有一个类叫IrgSrhDelegate,那么它的测试类的命名就是IrgSrhDelegateTest测试用例的命名 测试用例的命名规则是:test+用例方法名称 比如要测试的方法叫updateData,那么测试用例的命名就是testUpdateData(说明:“用例方法”就是指被测试的类中所包含的方法,而“测试用例”就是指测试类中所包含的方法比如IrgSrhDelegate中有一个方法叫做find

2、ByIrgFindParam,那么在IrgSrhDelegateTest中对应的测试用例名称就是testFindByIrgFindParam。 其它命名规范 本规范未说明的其它命名规范请参照J*A语言编码规范(ENO-W063-J*A Coding Rule.doc)。 二、 测试程序的包名定义规范 为了保持测试程序的独立和稳定性,请按照下面的方式组织测试程序: 假如被测试类的包名是com.wistrons.util,那么测试类的包名就是.wistrons.util。也就是说在被测试类的包名前加上“test.”,这就是测试类的包名。 三、 测试数据的准备方案 准备测试数据时有三种方案可以选择。

3、 在程序中直接写入测试数据 在要输入的数据项不多的情况下可以采用这种方式 使用junitpack包中的InputDataUtil工具类 (要使用这个工具,请在测试程序中加上import junitpack.InputDataUtil) 这种方法要求把测试数据写在一个XML文件中,XML的格式如下所示: h0001 在这个XML文件中的根节点为inputs,根节点下可以有多个input节点。每个input节点代表一个case中需要的所有数据。 使用这个工具类的操作步骤如下: 1) 获取XML的存放路径。 请把写好的XML存放在测试类所在的目录中,然后可以按如下方式取得XML的存放路径: Stri

4、ng xml = IrgSrhDelegateTest.class.getResource(".".toString( +"test.xml"2) 创建InputDataUtil的实例。 InputDataUtil inputUtil = new InputDataUtil(;3) 在InputDataUtil实例中设置接受数据的类名,InputDataUtil将此类与XML进行数据绑定。 inputUtil.setClassName("mon.fz25IrgSrh. SeekIrgSrhOpt"4) 调用InputDataUtil.

5、parse(方法,从XML中采集数据 java.util.Vector vector = (java.util.Vector inputUtil.parse(xml;5) 从Vector中取出被绑定类的实例 for (int i = 0; i < vector.size(; i+ SeekIrgSrhOpt opt = (SeekIrgSrhOpt vector.get(i; 现在对InputDataUtil的工作原理进行说明。InputDataUtil会根据input节点下的子节点名来设置被绑定的类中对应的set方法,然后把XML中的数据设置到被绑定类中。比如上例XML中,input节

6、点下有三个子节点:IrgCd、IrgName、IrgKname。那么在调用InputDataUtil.parse(方法时,InputDataUtil就会分别调用SeekIrgSrhOpt类的setIrgCd(、setIrgName(、setIrgKname(方法,把数据设置到SeekIrgSrhOpt的实例类中,并返回包含这些实例类的Vector对象。 使用Digester(要使用这个工具,请在测试程序中加上import mons.digester.Digester) Digester是Apache提供的一个工具类,上面的InputDataUtil也是从Digester类继承的。当使用Inpu

7、tDataUtil暂时无法解决的时候,可以直接使用Digester。 使用Digester的步骤如下: 1) 获取XML的存放路径。 获取方式与使用InputDataUtil相同。 2) 创建Digester的实例。 Digester dig = new Digester(;3) 设定与inputs节点绑定的类为Vectordig.addObjectCreate("inputs", "java.util.Vector"4) 设定与input节点绑定的类 dig.addObjectCreate("inputs/input","

8、 mon.fz25IrgSrh. SeekIrgSrhOpt "5) 根据input节点下的子节点,依次设定相应的set方法 dig.addCallMethod("inputs/input/ IrgCd ", "setIrgCd ", 1;dig.addCallParam("inputs/input/ IrgCd ", 0;6) 设定向Vector中加入数据的方法 dig.addSetNext("inputs/input", "add"7) 调用Digester.parse(方法,从X

9、ML中采集数据 java.util.Vector vector = (java.util.Vector dig.parse(xml;8) 从Vector中取出被绑定类的实例 for (int i = 0; i < vector.size(; i+ SeekIrgSrhOpt opt = (SeekIrgSrhOpt vector.get(i; Digester的用法非常灵活,可以组织非常复杂的数据。 关于Digester的详细用法请参考/commons/digester/。 四、 对UI测试的原则 对UI做单元测试必须做到不能牵涉到业务逻辑操作(比如数据库操作、与Server的交互)。否则就是UI的设计不合理。对UI的单元测试应该非常单纯,就只是测试界面的动作是否符合设计要求。 五、 测试数据的覆盖率

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论