JBuilder单元测试之创建测试固件

JBuilder2005单元测试之创建测试固件

  一个产品只有通过检验才能投放市场,同样的,一个业务类也只有在经验测试后才能保证功能的正确性,以便被其他类或程序调用,否则隐藏其中的Bug就蔓延开了。业务功能点测试是测试人员的职责,但业务类API的正确性必须由开发人员保证。

  回忆一下最近你所开发的系统,往往一个最难忘的情节是通宵达旦地毯式搜索某个刁专的Bug,历尽千辛万苦,最终找到并解决了它。查找一个隐藏的Bug往往是踏破铁蹄无觅处,而找到后却是:解决全不费功夫。

  造成这尴尬窘局有以下几点原因:

  其一是使用增量式测试策略,即先编写功能代码,在模块开发完毕后才回过头来编写测试用例,因为一个功能模块可能包含许多相互关联的类,形成了层层调用,交错复杂的调用网络,一旦发现了Bug,只得查户口似的逐一排查,其艰辛程度可想而知。

  其二是使用不正确的测试方法,如在每个类中提供一个main()测试函数,对类中的功能方法进行测试,通过运行类的main()方法查看类功能的正确性。在某种程序上,这或许是一个值得赞扬的工作习惯,但工作方式却不足取。因为每个类都必须单独运行,以执行其测试功能,并由开发人员观察测试的正确性。随着程序规模的扩大,类数目直线上升,原有的类也会发生代码的调整,一些功能点可能就变成了漏网之鱼,变成了茫茫"类"海里的黑户口,将来"违法乱纪"起来就很难监控了。

  针对这些传统测试思想的不足,测试先行、频繁测试、自动测试的测试思想被越来越多的开发人员所接受并付诸实践。

  测试先行乍听起来有点让人不可思议,一件东西还没有做出来就想着怎么去测试它?仔细分析,这并不荒唐,因为这让你在设计类时,站在调用者的角度去理解类的对外接口,迫使你深入理解类的外在关系,考虑接口的用途,而在具体编写程序时才去具体考虑内部实现细节,这样设计出接口将更易使用,结构也会更趋合理。

  频繁测试,即指测试不应当是阶段性的工作,而应当在程序编写过程中不断进行。因为系统中的类之间往往都存在较多的关联关系,当更改了类的`功能时,往往会有多个类受到直接或间接的影响。所以你应该频繁测试以及早发现这种因功能、调整而引起的Bug,越早发现错误解决它的代价越小。频繁测试也是XP编程的一个重要环节,XP编程总让人觉得他们注重功能实现而忽视测试,其实他们也非常关注测试,毕竟测试可以使他们尽可能快的稳步前进。

  所谓自动测试并不是说有一个工具可以让你像安检器一样,自动测试出你类中的问题。而是指应用一定的测试框架,为每个业务类编写独立的测试用例,类代码调整后,对应的测试用例同步调整。多个测试用例组成一个测试套件一起批量运行,它们就像一个强大的Bug嗅探器,一旦发现Bug就会输出特定的信息报告错误,只要一个测试用例没有通过测试就说明程序中有问题。测试用例中所包含的测试规则完成由你定制,这个测试套件对Bug嗅探的"灵敏度"完全取决于测试用例的测试规则,框架提供编写和运行测试用例的规范性方法。

  在编写一个业务类时,需要相应编写对应的测试用例,一开始挺招"惯性定律"抵触的,因为它要求你将创建一个测试用例类,似乎需要更多的工作。但你的付出是会得到加倍回报的,随着软件类规模的增大你会发现,当传统测试方法越来越捉襟见肘,穷于应付时,基于测试框架的测试技术依然"谈笑自如"。当然别人这么说,我们也不应当马上就深信不疑,疑惑永远是值得推崇的科学精神,我们应该通过自己的实践却真真切切地体会这种改进所带来的快乐。

相关文章

巧巧手-种子粘贴画教案【通用5篇】

巧巧手——种子粘贴画 赵艳光 教学目标: 1、知识目标:启迪学生用日常生活中的种子制作粘贴画,学会制作步骤。 2、能力目标:通过创作种子贴画培养学生的审美能力与创新精神,发展创造性思维,...
教案大全2019-03-07
巧巧手-种子粘贴画教案【通用5篇】

长城砖教案(通用3篇)

教学目的: 1、认识8个生字,理解“自惭形秽、神采飞扬、热泪盈眶、妄自菲...
教案大全2015-02-03
长城砖教案(通用3篇)

小学一年级数学下册《观察贼鸥》教案(通用3篇)

教学内容: 教科书第6页“信息窗2”,“你说我讲”第一个红点的问题。 教学目标: 1、了解数位(个位、十位、百位)的意义及顺能正确地读、写100以内的数。 2、培养学生独立思考的良好习惯。 3、让学生...
教案大全2017-05-09
小学一年级数学下册《观察贼鸥》教案(通用3篇)

《阿基米德原理》的教案设计

《阿基米德原理》的教案设计 一、教学分析 (1)教材分析 本节的主要内容有:探究阿基米德原理;用阿基米德原理解释轮船漂浮的原因,学习用阿基米德原理计算物体所受浮力的大...
教案大全2011-09-08
《阿基米德原理》的教案设计

《走一步,再走一步》教案设计

作为一名专为他人授业解惑的人民教师,通常需要准备好一份教案,教案是教材及大纲与课堂教学的纽带和桥梁。那么什么样的教案才是好的呢?下面是小编为大家收集的《走一步,再走一步》教案设计,希望能够帮助到大家。...
教案大全2015-06-01
《走一步,再走一步》教案设计

如果你高兴-教学教案(推荐3篇)

一、 学生在《木偶进行曲》的音乐中做律动入教室。 二、 师生互致问候,并伴随呼吸训练。 三、 导入 出示画有小朋友载歌载舞图样的图片。学生观察并讨论: 1、 图片上的小朋友在干什么? 2、 小朋友的心...
教案大全2013-06-01
如果你高兴-教学教案(推荐3篇)