网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.java 学习之路.
.用JavaBean实现文件上载(三)属性.
.MyEclipse 4.1 正式发.
.JAVA教程:解析Java的多线程机制.
.用Java开发3D游戏之创建浮动的球.
.WAS 5.x中数据源的配置使用及常见.
.在Applet中读取文件内容.
.2005 Java中国开发者大会现场报道.
.apache的Jakarta-ORO库 的正则表.
.tomcat深入??内部结构描述.
.手把手教你:安装Opldap历险记.
.JBUILDERX 初体验.
.使用Java web start 和 JNLP技术.
.EJB 3.0开发指南之实体Bean的设计.
.Java String 的 equals() 方法可.
.使用emacs-jde进行Java开发.
.关于Java编程的中文问题的几条分.
.JavaDoc用法.
.解决运行eclipse内存不足的问题.
.在Java中对标准流进行重定向.

如何提高软件的可测试性

发表日期:2008-1-5



  由于企业及用户对软件质量的重视程度越来越高,使得测试在软件开发中的地位越来越重要。测试是目前用来验证软件是否能够完成所期望的功能的唯一有效的方法。但是在测试的实施过程中,由于软件设计本身存在的可测性性太差的问题。导致了测试的难度相当大,甚至出现了无法测试的情形。下面结合日常测试工作中碰到的问题简要的谈一下如何提高软件可测试性的问题。
  
  通常情形下,测试难以进行由以下几方面原因导致:
  
  1,被测试对象需要传入的参数过多。
  
  2,被测对象过多的调用了其他类或方法。
  
  3,内部的逻辑判定过多(内部牵扯复杂)。
  
  4,需要构造的作为参数的对象本省过于复杂。
  
  5,和界面显示部分交互过于平凡(耦合性太强)。
  
  针对以上问题,建议在软件设计过程中遵循以下原则:
  
  1,首先最重要的是坚持测试驱动设计(测试先于设计)的方法。
  
  优先编写测试代码。这是标准的 XP 方法。这不是说您应该一次性编写全部测试代码后,再一次性全部实现。先写验收测试,在写单元测试,编写一些测试代码,实现它们,再编写一些测试代码,再实现它们等等是个更好的办法。设计以这种方式得以进展;在实现阶段捕捉错误并在下一组测试中改正它。以这种方式编写测试也更少会使人畏缩。
  
  2,尽量做到每个操作对应一个方法,使方法小型化。
  
  使用小型方法说明和重载带缺省方法参数的方法将使您在测试中调用这些方法变的愉快的多。否则,在测试这些方法时您将不得不构造额外参数。假如参数很大,那么将很快导致代码膨胀。更糟的是,它会诱使您编写比在其它情况下更少的测试。
  
  3,对于显示部分(GUI),尽量做到显示与控制分离。
  
  把代码移到 GUI 视图的外面。然后各种 GUI 动作就能成了模型上的简单方法调用。这样,对 GUI 测试者来说,通过方法调用测试功能比间接地测试功能轻易的多。另一个好处是它使修改程序功能而不影响视图变的更轻易。
  
  4,对于可能要作为参数的类,可以做一个接口,用接口说明外部程序组件使得我们可以轻易地在测试案例中模拟这些组件。当需要时可以实现改接口形成一个空类作为参数传入。非凡是当该内还没有完全实现时,这种方法最为行之有效。
  
  最后,假如自己不负责测试工作,作为开发员在设计过程中要时刻提醒自己“我如何才能测试这些代码?我如何才能以可测试方式编写这些代码”。
上一篇:准备SCJP的时候做的一些笔记 人气:502
下一篇:“浅薄”绝不该是中国程序员的性格特征 人气:535
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐