快速业务通道

追求代码质量 - JUnit 4与TestNG的对比 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
ataValues(){   return new Object[][]{    {Vector.class, new String[] {"java.util.AbstractList",     "java.util.AbstractCollection"}},    {String.class, new String[] {}}   };   }   @Test(dataProvider = "class-hierarchies")   public void verifyHierarchy(Class clzz, String[] names)   throws Exception{    Hierarchy hier = HierarchyBuilder.buildHierarchy(clzz);    assertEquals(hier.getHierarchyClassNames(), names,    "values were not equal");   } }

dataValues() 方法通过一个多维数组提供与 verifyHierarchy 测试方法的 参数值匹配的数据值。TestNG 遍历这些数据值,并根据数据值调用了两次 verifyHierarchy。在第一次调用时,Class 参数被设置为 Vector.class ,而 String 数组参数容纳 “java.util.AbstractList ” 和 “ java.util.AbstractCollection ” 这两个 String 类型的数据。这样挺方便吧 ?

为什么只选择其一?

我已经探讨了对我而言,TestNG 的一些独有优势,但是它还有其他几个特性 是 JUnit 所不具备的。例如 TestNG 中使用了测试分组,它可以根据诸如运行 时间这样的特征来对测试分类。也可在 Java 1.4 中通过 javadoc 风格的注释 来使用它,如 清单 5 所示。

正如我在本文开头所说,JUnit 4 和 TestNG 在表面上是相似的。然而,设 计 JUnit 的目的是为了分析代码单元,而 TestNG 的预期用途则针对高级测试 。对于大型测试套件,我们不希望在某一项测试失败时就得重新运行数千项测试 ,TestNG 的灵活性在这里尤为有用。这两个框架都有自己的优势,您可以随意 同时使用它们。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号