TestNg测试框架使用

安装Eclipse插件

  For Eclipse 3.4 and above, enter http://beust.com/eclipse.

  For Eclipse 3.3 and below, enter http://beust.com/eclipse1.

  Maven支持TestNG


<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<groupId>com.homeinns.web</groupId>

<artifactId>homeinns-testng</artifactId>

<version>0.0.1-SNAPSHOT</version>

<packaging>jar</packaging>

<name>homeinns-testng</name>

<url>http://maven.apache.org</url>

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

</properties>

<dependencies>

<dependency>

<groupId>org.testng</groupId>

<artifactId>testng</artifactId>

<version>6.1.1</version>

<scope>test</scope>

</dependency>

</dependencies>

<build>

<plugins>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-surefire-plugin</artifactId>

<version>2.16</version>

<configuration>

<suiteXmlFiles>

<suiteXmlFile>testng.xml</suiteXmlFile>

<!-- <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile> -->

</suiteXmlFiles>

</configuration>

</plugin>

</plugins>

</build>

</project>

 配置TestNg suite


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

<suite name="Suite" parallel="none">

<!--enabled="true"让测试生效,也可根据情况关闭某些测试 -->

<test name="Test" enabled="true">

<!--指定参数 -->

<parameter name="Name" value="Irving" />

<parameter name="Sex" value="Man" />

<!--指定测试包 -->

<packages>

<package name="com.homeinns.web.testng.*" />

</packages>

<!--指定测试类 -->

<classes>

<class name="com.homeinns.web.testng.AppTest" />

</classes>

</test> <!-- Test -->

</suite> <!-- Suite -->

TestNg注解配置

public class NgTest {

@Test

public void f() {

}

@Test(

// 在指定的时间内启用3个线程并发测试本方法10次

threadPoolSize = 3, invocationCount = 10, timeOut = 10000,

// 等待测试方法t0测试结束后开始本测试

dependsOnMethods = { "f" },

// 指定测试数据源CLASS和数据源名称(参考注解@DataProvider),返回几条数据会跑测试方法几次

dataProvider = "generate", dataProviderClass = GeneratorRandomNum.class,

// 分组名称

groups = { "checkin-test" })

// 读取配置文件中的参数,配置如上,用@Optional设置默认值

@Parameters({ "Name" })

public void f1(@Optional("name") String name) {

}

}

  测试报告

  运行测试后 在my-testng/test-output/ 目录下(maven \target\surefire-reports)

  gradle配置


subprojects {

apply plugin: 'java'

// Disable the test report for the individual test task

test {

reports.html.enabled = false

}

}

task testReport(type: TestReport) {

destinationDir = file("$buildDir/reports/allTests")

//Include the results from the `test` task in all subprojects

reportOn subprojects*.test

}Grouping TestNG tests

test {

useTestNG {

excludeGroups 'integrationTests'

includeGroups 'unitTests'

}

}

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-10-02 17:56:16

TestNg测试框架使用的相关文章

使用Spring 2.5 TestContext测试框架

概述 Spring 2.5 相比于 Spring 2.0 所新增的最重要的功能可以归结为以下 3 点: 基于注解的 IoC 功能: 基于注解驱动的 Spring MVC 功能: 基于注解的 TestContext 测试框架. Spring 推荐开发者使用新的基于注解的 TestContext 测试框架,本文我们将对此进行详细的讲述. 低版本的 Spring 所提供的 Spring 测试框架构在 JUnit 3.8 基础上扩展而来,它提供了若干个测试基类.而 Spring 2.5 所新增的基于注解

自动化测试Selenium+TestNG自动化测试框架

TestNG介绍 TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit,   功能都差不多, 只是功能更加强大,使用也更方便 Java中已经有一个JUnit的测试框架了.  TestNG比JUnit功能强大的多.  测试人员一般用TestNG来写自动化测试.  开发人员一般用JUnit写单元测试. 官方网站: http://testng.org/doc/index.html   在Eclipse中安装TestNG 打开Eclipse   Help ->Install New

测试框架的利好和繁荣:Java单元测试框架之争

最近Reddit上的讨论帖引发了一场JUnit和Spock两个测试框架支持者之间的辩论,源起于Jakub Dziworski发表的博文,其中心思想是"JUnit有什么问题?"目前来看几乎每个GitHub仓库都引入了基于JUnit的单元测试,不过也难怪毕竟JUnit已经经历了超过15个年头.但是Spock正在持续蚕食市场. JUnit由极限编程(eXtreme programming)创始人Kent Beck.<设计模式:可复用面向对象软件的基础>合著者Erich Gamma

Selenium一款有名的Web应用程序测试框架

在本文中,我们将介绍如何轻松地从 Selenium 1 过渡到 Selenium 2,并用一些示例介绍如何使用 Selenium 2,如何进行远程测试,以及如何将书面测试从 Selenium 1 迁移到 Selenium 2 中. Selenium 是用于测试 Web 应用程序用户界面 (UI) 的常用框架.它是一款用于运行端到端功能测试的超强工具.您可以使用多个编程语言编写测试,并且 Selenium 能够在一个或多个浏览器中执行这些测试. Selenium(以下简称为 Selenium 1)

Struts行为测试框架StrutsTestCase实战

阅读提要 StrutsTestCase是一个强有力的易于使用的针对Struts行为的测试框架.StrutsTestCase,并与传统型JUnit测试相结合,将会带给你一个相当高的测试覆盖率并提高你的产品的可靠性. 一.引言 StrutsTestCase是一个用于测试Struts行为的基于Junit的测试框架.如果你使用Struts,那么你会注意到它可以提供给你一种容易而有效的方式来测试你的应用程序的Struts行为类. 典型的J2EE应用程序都是分层构建的,如图1所示. ·DAO层封装了数据库存

一个可行的Selenium测试框架

老早就想写一些Selenium测试框架的搭建,但是时间和想法都不太成熟.今天 就大概粗略的和大家分享一下. 本文的背景假设读者有一定的selenium使用经验. 1.元素定位 大家都知道,网页这个东西在浏览器里展现出来的是一个完整的xml,所以可 以通过xml的访问方式,字符串查询,正则等来访问xml. selenium支持的遍历模式有: public class By { protected By(); protected By(Func<ISearchContext, IWebElement

WF4.0实战(五):实现一个直观易扩展的自动测试框架

概述: 这篇文章用WF实现一个软件自动测试框架,这个框架你可以随意扩展.本这个框架根据WF流程去自动地点击你的页面:自动的在你的文 本上输入值:自动的做一些人为的操作.也就是说WF相当于一个测试用户,自动地帮你测试软件.只需要你定制测试流程. 写一个待测试的软件: 这里我写了一个很简单的待测试的软件:一个加法运算.界面如下图,就一个Form. 后台代码如下: 1 public partial class MainForm : Form 2 { 3 public MainForm() 4 { 5

构建iOS持续集成平台(二)测试框架

测试框架 有了自动化构建和依赖管理之后,开发者可以很轻松的在命令行构建整个项目,但 是,作为持续集成平台来说,最重要的还是测试,持续集成最大的好处在于能够尽早发现问题,降低解 决问题的成本.而发现问题的手段主要就是测试.在Martin Fowler的Test Pyramid[10]一文中论述了 测试金子塔的概念,测试金字塔的概念来自Mike Cohn,在他的书Succeeding With Agile中有详细描述 :测试金字塔最底层是单元测试,然后是业务逻辑测试,如果更细化一点的话,可以分为把完

一种轻量级、可重用、可扩展的OSGi应用程序测试框架

引言 OSGi 是一个基于 Java 的,提供动态模块加载和管理的运行时框架,在业界已经得到广泛应用.OSGi 框架使用 Bundle 把复杂的应用程序模块化.在 OSGi 的框架中,Bundle 的生命周期由 OSGi 运行环境进行管理:Bundle 之间以松耦合的形式相互依赖:Bundle 有严格的访问安全限制.但也正是由于以上这些特点,给测试这些 Bundle 带来了很大的困难.许多测试用例要求被测 Bundle 及其依赖的 Bundle 同时运行于 OSGi 环境中:同时若需将测试代码和