首页
网页制作
网络编程
脚本专栏
数据库
网站运营
网络安全
平面设计
CMS教程
搜索
建站极客
网络编程
JSP编程
正文
JBuilder 2005单元测试之慨述
所属分类:
网络编程
/
JSP编程
阅读数: 2123
收藏 0
赞 0
分享
一个产品只有通过检验才能投放市场,同样的,一个业务类也只有在经验测试后才能保证功能的正确性,以便被其他类或程序调用,否则隐藏其中的Bug就蔓延开了。业务功能点测试是测试人员的职责,但业务类API的正确性必须由开发人员保证。
回忆一下最近你所开发的系统,往往一个最难忘的情节是通宵达旦地毯式搜索某个刁专的Bug,历尽千辛万苦,最终找到并解决了它。查找一个隐藏的Bug往往是踏破铁蹄无觅处,而找到后却是:解决全不费功夫。
造成这尴尬窘局有以下几点原因:
其一是使用增量式测试策略,即先编写功能代码,在模块开发完毕后才回过头来编写测试用例,因为一个功能模块可能包含许多相互关联的类,形成了层层调用,交错复杂的调用网络,一旦发现了Bug,只得查户口似的逐一排查,其艰辛程度可想而知。
其二是使用不正确的测试方法,如在每个类中提供一个main()测试函数,对类中的功能方法进行测试,通过运行类的main()方法查看类功能的正确性。在某种程序上,这或许是一个值得赞扬的工作习惯,但工作方式却不足取。因为每个类都必须单独运行,以执行其测试功能,并由开发人员观察测试的正确性。随着程序规模的扩大,类数目直线上升,原有的类也会发生代码的调整,一些功能点可能就变成了漏网之鱼,变成了茫茫"类"海里的黑户口,将来"违法乱纪"起来就很难监控了。
针对这些传统测试思想的不足,测试先行、频繁测试、自动测试的测试思想被越来越多的开发人员所接受并付诸实践。
测试先行乍听起来有点让人不可思议,一件东西还没有做出来就想着怎么去测试它?仔细分析,这并不荒唐,因为这让你在设计类时,站在调用者的角度去理解类的对外接口,迫使你深入理解类的外在关系,考虑接口的用途,而在具体编写程序时才去具体考虑内部实现细节,这样设计出接口将更易使用,结构也会更趋合理。
频繁测试,即指测试不应当是阶段性的工作,而应当在程序编写过程中不断进行。因为系统中的类之间往往都存在较多的关联关系,当更改了类的功能时,往往会有多个类受到直接或间接的影响。所以你应该频繁测试以及早发现这种因功能、调整而引起的Bug,越早发现错误解决它的代价越小。频繁测试也是XP编程的一个重要环节,XP编程总让人觉得他们注重功能实现而忽视测试,其实他们也非常关注测试,毕竟测试可以使他们尽可能快的稳步前进。
所谓自动测试并不是说有一个工具可以让你像安检器一样,自动测试出你类中的问题。而是指应用一定的测试框架,为每个业务类编写独立的测试用例,类代码调整后,对应的测试用例同步调整。多个测试用例组成一个测试套件一起批量运行,它们就像一个强大的Bug嗅探器,一旦发现Bug就会输出特定的信息报告错误,只要一个测试用例没有通过测试就说明程序中有问题。测试用例中所包含的测试规则完成由你定制,这个测试套件对Bug嗅探的"灵敏度"完全取决于测试用例的测试规则,框架提供编写和运行测试用例的规范性方法。
在编写一个业务类时,需要相应编写对应的测试用例,一开始挺招"惯性定律"抵触的,因为它要求你将创建一个测试用例类,似乎需要更多的工作。但你的付出是会得到加倍回报的,随着软件类规模的增大你会发现,当传统测试方法越来越捉襟见肘,穷于应付时,基于测试框架的测试技术依然"谈笑自如"。当然别人这么说,我们也不应当马上就深信不疑,疑惑永远是值得推崇的科学精神,我们应该通过自己的实践却真真切切地体会这种改进所带来的快乐。
更多精彩内容
其他人还在看
table中点击表头实现排序的功能示例介绍
获取上次点击的表头的名称和这次点击的表头的名称做比较,如果两者相同就按原先相反的顺序排列,否则新列升序排列
评论 0
收藏 0
赞 0
分享
jsp防止跨域提交数据的具体实现
这篇文章主要介绍了jsp防止跨域提交数据的具体实现,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
解决jsp页面使用网络路径访问图片的乱码问题
这篇文章主要介绍了jsp页面使用网络路径访问图片的乱码问题的解决方法 ,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
在jsp页面如何获得url参数
这篇文章主要介绍了在jsp页面获得url参数的方法,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
几种防止表单重复提交的方法
表单重复提交是在多用户Web应用中最常见的一个问题,很多场合都会遇到这种情况,下面与大家分享下防止表单重复提交的几种策略
评论 0
收藏 0
赞 0
分享
struts2集成javamail发邮件示例详解
这篇文章主要介绍了struts2集成javamail发邮件示例,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
不让tomcat显示目录文件列表的配置方法
这篇文章主要介绍了不让tomcat显示目录文件列表的配置方法,这里需要修改conf/web.xml文件,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
jsp使用cookie存储中文示例分享
这篇文章主要介绍了jsp使用cookie存储中文示例,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
jsp中include指令静态导入和动态导入的区别详解
这篇文章主要介绍了jsp中include指令静态导入和动态导入的区别,通过示例和图文讲解可以更好的看出他们的区别,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
jsp中文显示问号问题解决方法
jsp中想要输出的中文被显示成问号?在eclipse-windows- preferences中搜索jsp,Encoding选项中选择 Chinese,此问题便可解决
评论 0
收藏 0
赞 0
分享
查看更多
网络赚钱
更多
卡盟是怎么赚钱的?卡盟各个盈利模式介绍
女子注册相亲网站收到短信 点击链接后6万块钱不翼而飞
从世界杯观赛看,“移动视频”就是个伪命题
网赚感悟:网站为什么不赚钱?网赚没你想的那么简单
短视频如何赚钱?短视频自媒体实操经验分享(真实)
网站赚钱这么难吗 你学会了多少?
站长故事
更多
一个个人站长的网站推广运营核心销策略
某个人站长怎么用交友网站年赚80万的
互联网屌丝合伙创业经验分享
直击苹果发布会:苹果iWatch能否能撑起一个市场?
作为站长的我们到底需要什么?我们又缺少了什么
俞敏洪如何被北大逼上梁山