,Java   工具软件   办公软件   操作系统   网络安全   设计在线   程序开发   教程宝典   软件下载   软件论坛,Java
您的位置:Yesky > 软件 > 开发者网络 > 正文
JBuilder2005单元测试之创建测试用例
[文章信息]
作者:陈雄华
时间:2005-05-10
出处:天极网
责任编辑:方舟
[文章导读]
我们先为Subsection类创建测试用例
advertisement
热点推荐
· 图文详解:黑客入侵方式演示
· Java异常处理的陋习展播
· 多媒体系列教程:网页设计制作
· Powerpoint动画演示教程连载
· 光盘刻录手册:禁忌与技巧(下)
[正文]

1 2  下一页

  我们先为Subsection类创建测试用例。

  1.在编辑器中打开Subsection.java文件,使其处理激活态。

  2.File->New...->Test->在Test页的对象库中双击Test Case图标,启动创建测试用例的向导,如下图所示:


图 错误!文档
中没有指定样式的文字。指定测试的方法

  ·Select class:测试的目标类,默认为当前编辑器中打开的类,也可以通过其后的…按钮选择工程中其他的类。

  ·Avaiable methods:列出了测试目标类的所有public、protected和默认可视域的方法,private方法不列出。只要你测试了前三者的方法,private也被间接测试到了。这里,我们选择getValue()和sign()方法。

  点击Next到下一步。

  3.设置测试用例类的类名。


图 错误!文档中没有指定样式的文字。指定测试用例类的名称

  JBuilder为测试用例类指定了一个默认的类名,即Test<业务类名>,包名和业务类包名一致。接受默认的值,直接按Finish创建TestSubsection测试用例类。

  实战经验:

  虽然在物理上,业务类和测试用例类被放在不同目录下,但在工程窗格的资源树中,业务类和测试用例还是挤在了一起。如果一个包下有多个业务类,加上它们相应的测试用例类,将显得更加拥挤不堪。所以最好将测试用例放到不同的包中,如com.super.bdbj包中的所有业务类的测试用例放到test.super.bdbj目录下,这样将彻底解决测试用例和业务类的物理和逻辑上的分离,使工程窗格中的资源树更加整洁明了。

  TestSubsection类的代码如下所示:

  代码清单 错误!文档中没有指定样式的文字。向导生成的TestSubsection类

1. package chapter25;
2.
3. import junit.framework.*;
4. public class TestSubsection extends TestCase {
5.  private Subsection subsection = null;
6.  protected void setUp() throws Exception {
7.   super.setUp();
8.   subsection = new Subsection();
9.  }
10.
11. protected void tearDown() throws Exception {
12.  subsection = null;
13.  super.tearDown();
14. }
15.
16. public void testGetValue() {
17.   int d = 0;
18.   int expectedReturn = 0;
19.   int actualReturn = subsection.getValue(d);
20.   assertEquals("return value", expectedReturn, actualReturn);
21.   /**@todo fill in the test code*/
22. }
23.
24. public void testSign() {
25.  double d = 0.0;
26.  int expectedReturn = 0;
27.  int actualReturn = subsection.sign(d);
28.  assertEquals("return value", expectedReturn, actualReturn);
29.  /**@todo fill in the test code*/
30. }
31. }

  在第5行声明了一个Subsection的成员变量,并在setUp()中实例化这个变量(第7行),在tearDown()中释放这个变量(第12行),其实这三部分就构成了一个测试固件。当然,由于我们的getValue()、sign()方法都是静态方法,所以并不需要这个固件,在测试方法中直接调用方法就可以了,如Subsection.getValue(),但为了加强概念上的认识,我们特别予以保留。

  第16~22行的testGeValue()方法,和第24~30行的testSign(),就是在向导第1步所选择的需要测试的API方法对应的测试方法。JBuilder当然不可能知道我们API的逻辑规则,所以它仅提供了一个框架式的测试代码,需要我们发挥聪明才智通过assertXxx()定制覆盖性强的测试规则。

  注意:

  你也可以手工在TestSubsection类中添加测试方法,测试方法必须遵照public void testXxx()样式规范。所以如果你想在测试用例类中添加一个辅助性的方法,请不要以test为前缀,在更改业已生成的测试方法名称时,也要保证不去除方法前的test前缀,测试运行器籍此查找测试用例类中的测试方法。


1 2  下一页

发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
天极社区邀请您:写博客日记  上传相片   论坛聊天  订阅电子杂志  推荐网摘   免费图铃工具
笔名:   请您注意:

 遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。

 天极网拥有管理笔名和留言的一切权利。
评论:
 
,Java相关内容,Java焦点新闻
  • 为Java应用程序添加退出事件响应
  • 用Java实现FTP服务器解决方案
  • Java源码分析:深入探讨Iterator模式
  • 菜鸟初学Java的备忘录之第一次接触
  • 浅析Java中Data类的应用
  • FVD刺激高清碟机加速商业化 抢占商机最重要
  • 3家搜索引擎集体诉讼8848 吕春维未敢出席
  • 杨元庆:没有准备不会获批的备用方案
  • 军队信息化诞生新领域 电子军务呼之欲出
  • 世界经济论坛公布信息化程度全球最新排名
  • 2004政务绩效评估:政府门户尚处于发展阶段
  • 甲骨文出资5.15亿美元 意图收购RetekInc
  • 技术并购:帮你突破传统增长的“天花板”
  • ,JavaAdvertisement

    天极无线
    经典名曲 华语流行 欧美风情 人声音效 原声大碟
    你好周杰伦-安又琪
    直线-张韶涵
    天边-张韶涵
    看我72变-蔡依林
    乱世佳人-Twins
    全世界下雨-张娜拉
    我们的爱-飞儿乐队
    分手快乐-梁静茹
    爱在西元前-周杰伦
    三万英尺-迪克牛仔
    爱如潮水-张信哲
    爱情宣言-齐秦
    寻找玛依拉-刀郎
    驼铃-刀郎
    老鼠爱大米-杨臣刚
    功夫主题曲
    仙剑主题曲杀破狼
    天下无贼片尾曲
    冲动的惩罚-刀郎
    情人-刀郎
    爱情-莫文蔚
    挪威的森林-伍佰
    奔跑 - 羽泉
    因为爱 - 羽泉
      ·时尚女人圈
    ·经典影视专集
    ·美女秀场
    ·美丽大自然专题
    ·流行金曲
    ·科幻电影特区
    | 最新推荐
    ·你好周杰伦
    ·杀破狼
    ·寻找玛依拉
    ·孤单公园
    ·男人海洋
    | 魔术铃声
    ·少女丰胸
    ·少妇丰胸
    ·减肥魔铃
    ·增高魔铃
    ·美容魔铃

    今日报价查询 更多报价