`
lixw
  • 浏览: 200911 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

使用TestNG的八大理由

阅读更多

     转自【http://juvenshun.spaces.live.com/blog/cns!CF7D1BC903C111E1!313.entry?fl=cat

 

  1. 使用Annotation来标识测试。
    传统xUnit用命名规范来标识测试,难免有时会给人带来束缚。使用Annotation,束缚消失了,而且功能更强大了,一句@BeforeClass 就可以让一个方法在整个类之前运行,JUnit3可做不到。此外,编译器会帮我们检查Annotation的,所以,不容易犯低级错误。
  2. 支持测试分组。
    一个测试类的方法分属不同的组,给我们带来的好处是,我们可以选择性的运行测试方法,更灵活的管理测试之间的关系。单元测试和继承测试可以分属不同的组,随时运行单元测试,晚上运行继承测试。像这样:@Test ( groups = { "integration" })
  3. 支持测试依赖
    传 统的xUnit框架提倡测试孤立,也就是说一个测试和另外一个测试必须是完全独立的,这是一条很好的实践。但是考虑这样一种情况:有CRUD四个方法访问 数据库,如果数据库连接坏了,四个方法全会报错,可实际上,CRUD逻辑可没有问题。使用TestNG,我们可以先写个testDB方法,然后让CRUD 依赖它,像这样:@Test ( dependsOnMethods = { "testDB" })。如果testDB红了,CRUD就不会再运行。怎么样?是不是更合理了?
  4. 使用testng.xml管理测试运行
    不再需要一层一层的写TestSuit了,只要集中的在testng.xml里配置,你想运行什么组,什么包,什么类,甚至什么方法。可以有多个testng.xml,这样就可以定义多组规则了。而且,这个xml的dtd 可是相当的简单,不到150行,其中大部分是注释。
  5. 数据驱动测试
    你是否曾经在一个测试方法里面写类似的代码?
    assertEquals(4, add(1,3));
    assertEquals(4, add(2,2));
    assertEquals(4, add(4,0));
    它们是数据驱动的,测试逻辑没有任何区别。TestNG通过@DataProvider支持了数据驱动测试,测试代码可以变成这样:assertEquals(result, add(x,y)); 其中,result, x 和 y是通过方法参数传进来的。
  6. 多线程测试
    使用JUnit,这是不可能是实现的,TestNG给了我们惊喜,使用这样的配置:<suite name = "My suite" parallel = "methods" thread-count = "5" >,就可以让每个方法在不通的线程里运行了。
  7. 内容详实的测试报告
    可以通过'verbose '属性来控制consol的舒服详细程度,TestNG还能帮你生成丰富的HTML测试报告,老板看到这样的东西肯定开心啦。
  8. 与主流工具的成熟集成
    我在eclipse,在Maven中都跑过了TestNG,感觉还是相当的舒畅的,TestNG和ant和spring等集成也没什么问题,大家都很支持它。
TestNG非常不错的官方文档:http://testng.org/doc/documentation-main.html
不停留在介绍技术表面的书:Next Generation Java Testing
InfoQ上对TestNG的视频介绍:Designing for Testability
分享到:
评论

相关推荐

    testng-xslt-1.1.2.zip

    TestNG是Java领域中广泛使用的自动化测试框架,由Cedric Beust创建,它是JUnit的一个增强版,提供了更多功能,如并发测试、参数化测试、依赖性管理等。而TestNG XSLT扩展则进一步增强了其报告功能,允许用户通过...

    TestNG框架使用

    TestNG框架使用详解 TestNG是一款强大的测试框架,它提供了比JUnit更丰富的功能,尤其在并行测试、分组测试、依赖测试等方面表现突出。这篇博文将深入探讨如何使用TestNG进行单元测试和集成测试。 1. **TestNG基本...

    使用testng测试java工程_操作手册分享.pdf

    使用 TestNG 测试 Java 工程操作手册分享 本操作手册分享了使用 TestNG 测试 Java 工程的步骤,包括环境准备、添加工程、编写测试类、运行测试等内容。 环境准备: 在使用 TestNG 测试 Java 工程之前,需要准备好...

    TestNG离线安装文件 site

    TestNG是一种广泛使用的Java测试框架,它为开发者和测试工程师提供了功能强大且灵活的测试解决方案。这个"TestNG离线安装文件site"包含了在没有网络连接的情况下为Eclipse集成TestNG环境所需的所有组件,特别适合...

    使用 Selenium 和 TestNG 进行编程式测试

    讲解如何使用Selenium 和 TestNG 进行编程式测试

    TestNG教程.pdf

    TestNG(Testing New Generation)是一个开源的自动...通过利用注解来定义测试和分组测试,使用TestNG的运行测试功能,以及生成详细的测试报告,TestNG帮助测试团队提高了测试的效率和质量,进而提升了软件产品的质量。

    testng-6.8.8文件

    - **testng-6.8.8.jar**:这是TestNG的JAR文件,包含了TestNG库的所有类和资源,可以被Java项目引用以使用TestNG进行测试。 - **src**:通常包含Java源代码文件,可能是使用TestNG编写的测试类或相关项目的源代码...

    testng-6.9.4和testng-6.8.8.zip

    TestNG是Java编程语言中的一款强大的自动化测试框架,与JUnit和Selenium等工具配合使用,为软件测试提供了全面且灵活的解决方案。TestNG由Cédric Beust创建,旨在提高测试效率并支持更复杂的测试场景,如并发测试、...

    TestNG官方文档中文版

    ### TestNG官方文档中文版知识点概述 #### 一、TestNG简介与特点 **TestNG**(Next Generation...通过上述概念和注解的支持,TestNG能够帮助开发者构建出强大且灵活的自动化测试体系,极大地提高了测试的效率和质量。

    Testng JAR包及教程

    在Eclipse中使用TestNG进行测试,你需要创建一个新的TestNG类,通常继承自`org.testng.annotations.Test`注解的类。以下是一个简单的例子: ```java import org.testng.Assert; import org.testng.annotations.Test...

    testng测试报告模板BeautifulReport.7z

    通常,它会指导用户如何配置TestNG以使用定制的模板,可能包括XML配置文件的设置、类路径的指定等。详细阅读这份说明是理解并正确应用模板的关键。 3. **testNGpara.xml**:这可能是TestNG的测试配置文件,用于定义...

    testng官方文档及使用图解.rar

    TestNG使用注解来定义测试类和方法,如`@Test`用于标记测试方法,`@BeforeMethod`和`@AfterMethod`分别在每个测试方法前和后执行,简化了测试代码的编写。 2. **测试套件(Test Suites)**: TestNG允许创建测试...

    TestNG安装包

    让我们调用使用testng.xml文件。创建一个XML文件名称testng.xml C:\ &gt; TestNG_WORKSPACE 执行测试用例(s) &lt;!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" &gt; &lt;/suite&gt; 第7步:检查结果 ...

    testng-6.1.jar下载

    2. **测试套件(Test Suites)**:TestNG允许用户创建复杂的测试结构,如测试套件,可以包含多个测试类和配置文件,便于组织和管理大规模的测试。 3. **注解(Annotations)**:TestNG提供了丰富的注解,如@Test、@...

    testng eclipse离线 插件

    Eclipse是一款广泛应用的Java集成开发环境,而TestNG Eclipse插件则让开发者在Eclipse中无缝地使用TestNG进行测试编写和执行。 本离线资源包包含两个版本的TestNG:6.14.0和6.9.10。这两个版本各有其特点和适用场景...

    testng-6.7.jar TestNG依赖包

    1. **并行测试**:TestNG支持在同一测试类中并行执行测试方法,甚至可以跨测试类并行运行,这极大地提高了测试效率,尤其是在进行大量自动化测试时。 2. **测试套件(Suite)**:TestNG允许定义测试套件XML文件,...

    TestNg 官网下载源文件

    7. **使用TestNG**: 安装完成后,你可以在Eclipse中创建新的TestNG测试类,使用@Test注解编写测试方法,利用@BeforeTest, @AfterTest, @BeforeClass, @AfterClass, @BeforeMethod, 和 @AfterMethod等注解来定义测试...

    testng架包下载

    描述中提到的“testng架包使用在java程序中”,意味着你需要将TestNG整合到你的Java项目中。以下是一些关键知识点: 1. **测试类和方法**:在TestNG中,测试类和方法使用特定的注解来标识。例如,`@Test`注解标记...

    TestNG-6.3 测试框架

    TestNG的报告生成也是其一大亮点。它提供了详细且美观的HTML测试报告,不仅包含测试结果,还有测试用例的执行时间和异常信息,这对于分析测试结果和问题定位十分方便。 另一个值得一提的是,TestNG支持参数化测试,...

    TestNG教程

    使用注解是TestNG的一个重要特性,它们可以声明测试行为、前置条件、后置条件等。例如,`@BeforeSuite`注解的方法会在整个测试套件开始前运行,`@AfterMethod`则在每个测试方法结束后运行。这些注解极大地简化了测试...

Global site tag (gtag.js) - Google Analytics