Java两大测试方法Junit和TestNG的比较
Posted 梁凤财Zeno
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java两大测试方法Junit和TestNG的比较相关的知识,希望对你有一定的参考价值。
开发过程中,经常会用到JAVA测试,前端javas cript的调试相对比较轻松,firebug,console.log()等,但是java的就比较纠结点,每次改完都要去编译再运行,过程相对缓慢,加上如果项目比较大的话,就非常DT,有听朋友说他们公司的项目是用EJB,开发的时候每次做个小修改就要花费几分钟去重新部署在服务器上。为了减轻调试的过程,提高开发效率,一些专门用于测试框架出现了,典型的就是Junit和TestNG,下面长沙欧柏泰克软件学院跟大家简单分享下如何使用这两个工具以及他们的区别在哪,纯属入门级别的简介。
Junit
这个估计大家比较熟悉,目前发展到Junit4版本了,通过简单的注解就可以进行代码的测试,常用的有 @Test,@Before,@After;@Test注解的方法是我们要测试的方法,@Before就是执行@Test的方法前的操作,一般用来做初始化工作,@After就是@Test的方法运行完后的操作,看起来有点像AOP的注解,呵呵。
准备工作:导入Junit 4的jar包,运行的时候,点击右键,Run as ,选择“Junit Test”即可。
局限性:没有提供带参数执行的操作(不知新版本有木有),当然,你可以采用@Before来做一些初始化工作,这里可以初始化我们要测试的数据。
贴段测试demo代码:
TestNG
这个测试框架跟Junit差不多,但是有一点就是跟Junit不同的是,对数据驱动测试的内建支持,讲人话就是,可以@Test的方法可以是带有参数的,这也是它最闪亮的功能之一。它也有类似的注解:@Test、@BeforeMethod,还有一个@DataProvider,就是数据提供者,不理解看看代码就清楚了。
准备工作:TestNG的前期准备工作其实够呛的,网上一大堆说法,折腾了一段时间,终于成功了。具体的过程:myeclipse的是 点击 help->Eclipse MarketPlace... -->search:输入 testNG,找到TestNG,点击 Install,安装的过程灰常纠结,网速慢加上貌似下载插件的站点被墙了(你懂得,翻墙就不说了)。安装好之后,重启,导入TestNG的jar 包:testng-jdk15.jar,不用自己再去下载,自己直接在myeclipse导入就可,找一个有@Test的类,右键 Run as ,可以看到有“TestNG Test” 选项,恭喜你,成功了。
与Junit的区别主要在于测试数据的内建支持,可以让我们针对带有参数的方法进行单元测试。此外,构建测试测过程要配置相关的xml文件,声明是针对那个类哪个方法进行测试,具体请看代码。
测试demo代码:
配置文件:
temp-testng-customsuite.xml
以上是关于Java两大测试方法Junit和TestNG的比较的主要内容,如果未能解决你的问题,请参考以下文章