|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
那这个对象有什么意义?现在很多用javabean的人就不能保证对象有完整的意义,不成熟的使用模式等导致代码疯狂增长,调试维护的时间要得多得多。在说性能之前,先说说你这个比较的来历。据说微软为了证明。net比java好。
简介:在接纳测试驱动开辟的项目中,有一个常常困扰开辟者的成绩是:当存在大批的测试用例时,一次运转完一切的测试用例要消费很长的工夫,接纳TestSuite来构造测试用例的体例缺少天真性,通常它的构造布局大致和JavaPackage/Class的构造布局相似,不克不及和以后完成的营业需求完整相干。本文将经由过程扩大JUnit4来完成一种能够加倍高效天真地构造和运转测试用例的办理计划,增进测试驱动开发理论更无效地举行。
实践Java开辟中单位测试常碰到的成绩
在急迅开辟中,为了进步软件开辟的效力和质量,测试驱动开辟理论已被普遍利用。在测试驱动开发的项目中,跟着项目开辟不休地深切,堆集的测试用例会愈来愈多。测试驱动开辟的一个最好理论是随时运转测试用例,包管任什么时候候测试用例都能乐成实行,从而包管项目标代码是可事情的。当测试用例数量良多时,一次运转一切测试用例所损耗的工夫大概会很长,招致运转测试用例的本钱很高。以是在实践急迅开辟中,怎样构造、运转测试用例以增进测试驱动开辟成为一个值得探求的成绩。
JUnit是Java开辟中最经常使用的单位测试工具。在JUnit3用TestSuite来显式地构造想要运转的TestCase,一般TestSuite的构造大致上和JavaPackage/Class的构造相似,但如许其实不能和以后正在完成的营业需求完整相干,显得对照愚笨,好比说要运转某个子模块下一切的TestCase,大概运转跟某个详细功效相干的TestCase,触及到的TestCase数目大概较多,接纳界说TestSuite的体例一个个地增加TestCase很低效而且烦琐。在JUnit4中一样只能显式地构造要运转的TestCase。
怎样办理这些成绩,新公布的JUnit4供应了开辟职员扩大的机制,能够经由过程对JUnit举行扩大来供应一种办理的办法。
JUnit4的新特征和扩大机制
JUnit4引进了Java5的Annotation机制,来简化原本的利用办法。测试用例不再必要承继TestCase类,TestSuite类也作废了,改用@Suite.SuiteClasses来构造TestCase。可是这类仍是通过显现指定TestCase来构造运转的布局,不克不及办理上述的成绩。关于JUnit4的新特征详细能够参考developerworks的文章。
JUnit4的完成代码中供应了Runner类来封装测试用例的实行。它自己供应了Runner的多种完成,好比ParentRunner类、Suite类,BlockJUnit4ClassRunner类。我们能够充实使用JUnit4供应的已有举措措施来对它举行扩大,完成我们希冀的功效。
起首我们来剖析一下JUnit4在运转一个测试用例时,它外部的中心类是怎样事情的。展现了JUnit4运转测试用例时,中心类之间的挪用干系。
.JUnit4中心类之间的挪用干系
<p>
轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net, |
|