一、TestNG简介

  TestNG是一个开源自动化测试框架,它受到JUnit和NUnit的启发,而引入了许多新的创新功能,如依赖测试,分组概念,使测试更强大,更容易做到。 它旨在涵盖所有类别的测试:单元,功能,端到端,集成等。

  TestNG表示下一代(Next Generation的首字母)。 TestNG是类似于JUnit(特别是JUnit 4),但它不是一个JUnit扩展。它的灵感来源于JUnit。它的目的是优于JUnit的,尤其是当测试集成的类。 TestNG的创造者是Cedric Beust(塞德里克·博伊斯特)。TestNG消除了大部分的旧框架的限制,使开发人员能够编写更加灵活和强大的测试。 因为它在很大程度上借鉴了Java注解(JDK5.0引入的)来定义的测试,它也可以告诉你如何使用这个新功能在真实的Java语言生产环境中。

 

TestNG的特点

  • 注解
  • TestNG使用Java和面向对象的功能
  • 支持综合类测试(例如,默认情况下,没有必要创建一个新的测试每个测试方法的类的实例)
  • 独立的编译时间测试代码运行时配置/数据信息
  • 灵活的运行时配置
  • 主要介绍“测试组”。当编译测试,只要问TestNG运行所有的“前端”的测试,或“快”,“慢”,“数据库”等
  • 支持依赖测试方法,并行测试,负载测试,局部故障
  • 灵活的插件API
  • 支持多线程测试

二、eclipse集成testng有三种方法

  在 Eclipse 中安装 TestNG 插件,其软件环境要求(Java 1.7 以上版本,Eclipse 4.2 以上)

1.在线安装

  方法一:点击help-->install new software-->add,然后在name处输入testng,在location输入地址:http://beust.com/eclipse/,点击确认。

项勾testng插件,点击next,等待下载安装,完成之后重启 eclipse 即可。

  注意:在安装插件的时候将下面的【contact all update sites during install to find required software】,将这个前面的勾去掉,不然在安装插件的过程中,eclipse为去检查所有的插件地址,速度会很慢。

2.通过Eclipse Marketplace安装

方式一:打开help-->eclipse marketplace-->search,搜索testng,点击install安装即可。

方式二:

  进入TestNG官网地址:http://testng.org/,在官网上部导航区域点击“Download”链接,该页面介绍了集成TestNG的不同方式。在“Eclipse plug-in”区域,点击【TestNG page on the Eclipse Market Place】。

在【TestNG for Eclipse】,点击install按钮,拖拽至Eclipse的工作空间,即可启动Eclipse Marketplace进行安装TestNG,在弹出窗口,勾选testng,点击confirm,等待下载安装,完成之后重启 eclipse 即可。

3.离线安装TestNG插件

受网络等因素影响,在线安装方式速度比较慢,可以通过如下方式离线安装TestNG插件。

进入TestNG官网地址:http://testng.org/,在官网上部导航区域点击“Download”链接,该页面介绍了集成TestNG的不同方式。在“Eclipse plug-in”区域,点击【https://beust.com/eclipse】。

进入testng插件各版本,点击底部的zipped文件夹链接

选择择对应的版本,下载testng离线安装插件

下载zip压缩包

解压压缩包

  • 把解压后的features和plugins中的内容分别拷贝到eclipse对应的features和plugins文件夹;
  • 或把解压后的整个目录拷贝到dropins中。

重启Eclipse完成插件安装

如果不想直接复制,可以参考【eclipse集成maven插件】中的link方式。

 四、验证testng插件安装是否成功

方法一:打开Eclipse,新建-other,选择“TestNG ->TestNG Class”。

方法二: 打开Window -> Preferences->TestNG

 五、测试

新建一个 “Java Project”,右键 “Build Path” -> “Add Libraries” -> “TestNG”

3、 运行,得到结果报告

package testng01;

import org.testng.annotations.Test;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeTest;

public class testng1 {
@Test
public void f1() {
System.out.println("hello world");
System.out.println("testng1.f1()");
}
@AfterMethod
public void afterMethod() {
System.out.println("testng1.afterMethod()");
}

@BeforeClass
public void beforeClass() {
System.out.println("testng1.beforeClass()");
}

@BeforeTest
public void beforeTest() {
System.out.println("testng1.beforeTest()");
}

}

执行代码

运行结果

testng插件安装完毕!

参考:

https://www.cnblogs.com/xusweeter/p/6559196.html

https://blog.csdn.net/kdyyh/article/details/78483663

eclipse集成testng插件的更多相关文章

  1. eclipse集成testng插件(离线安装方式)

    testng是一个优秀的测试框架,我们在开发自动化测试脚本或者框架的时候经常会用到这个框架,因为它不仅能方便的帮助我们管理测试类,而且它还提供了丰富的注解来支持各种测试场景的实现(参数化,数据提供者, ...

  2. eclipse集成dorado5插件

    dorado5最好使用jdk1.6 32位,与eclipse j2ee indigo版本兼容最好.其他eclipse版本貌似view编辑时按钮点击事件不生效... 现附上安装包链接(均为官方版本): ...

  3. Jetty入门(1-2)eclipse集成jetty插件并发布运行应用

    一.eclipse集成jetty插件 1.从市场安装jetty插件 2.使用jetty插件发布应用和配置运行环境 debug配置默认共用上述run配置 3.使用jetty插件启动运行和停止运行选中的应 ...

  4. Eclipse集成Hadoop插件

    一.Eclipse集成Hadoop插件 1.在这之前我们需要配置真机上的hadoop环境变量 注:在解压tar包的时候普通解压会出现缺文件的现象,所以在这里我们需要用管理员的方式启动我们的解压软件(我 ...

  5. eclipse 集成 STS 插件

    eclipse 集成 STS 插件 想新建一个 Spring Boot 工程,发现没有,如图:(展示的是集成之后的) eclipse 要和 sts 版本对应的,进入http://spring.io/t ...

  6. Eclipse安装TestNG插件

    TestNG按照其文档的定义是: TestNG是一个测试框架,其灵感来自JUnit和NUnit的,但引入了一些新的功能,使其功能更强大,使用更方便. TestNG是一个开源自动化测试框架;TestNG ...

  7. 记录一次bug解决过程:eclipse集成lombok插件

    一 总结 eclipse集成插件lombok: 启动Spring Boot项目: sublime全局搜索关键字:ctrl + shift + F JDK8中的lambda表达式使用 二 BUG描述:集 ...

  8. eclipse 集成maven插件

    本文转载自:http://www.blogjava.net/fancydeepin/archive/2012/07/13/eclipse_maven3_plugin.html 环境准备: eclips ...

  9. 1--Selenium环境准备--Eclipse 添加Testng插件

    Eclipse安装TestNG TestNG官网地址:http://testng.org/ 1.离线安装TestNG插件: 受网络等因素影响,在线安装方式速度比较慢,可以通过如下方式离线安装TestN ...

随机推荐

  1. JSON序列化不想新建很多对象实体怎么办

    不用新建对象,而是用JSONObject 相当于Map类型,重复的key 会覆盖 //序列化JSONObject jsonObject = new JSONObject();jsonObject.pu ...

  2. consul剔除节点

    查询节点注册 curl -s http://192.168.1.1:8500/v1/catalog/service/aaa | python -m json.tool 删除注册信息 curl http ...

  3. [NOIP2017] 列队(平衡树)

    考虑转化题意: 设这次操作删掉点\((x, y)\) 对于每一次向左看齐:在第x行删除\((x, y)\),并将y以后的点全部前移一位 对于每一次向前看齐:x以后的点全部上移一位,并在最后一列插入\( ...

  4. Gradle里面两个 依赖管理插件,可以不用关心 具体jar版本号

    引用:https://spring.io/blog/2015/02/23/better-dependency-management-for-gradle Using the plugin with S ...

  5. 077、跨主机使用Rex-Ray volume (2019-04-24 周三)

    参考https://www.cnblogs.com/CloudMan6/p/7630205.html   上一节我们在docker1上创建mysql容器,并使用了 Rex-Ray volume mys ...

  6. luasocket编译安装遇到的坑

    由于需要获得本机的IP地址,所以需要 : local socket = require('socket') local server_hostname = socket.dns.gethostname ...

  7. 你真的了解word-wrap和word-break的区别吗?

    这两个东西是什么,我相信至今还有很多人搞不清,只会死记硬背的写一个word-wrap:break-word;word-break:break-all;这样的东西来强制断句,又或者是因为这两个东西实在是 ...

  8. API设计中响应数据格式用json的优点

    通常我们再设计api返回时,都使用json格式返回,相比xml,他又有什么优点呢? 更直观易懂 占用空间更小 能与JavaScript跟好的兼容.js通过eval()进行Json读取. 支持多种语言. ...

  9. Lucene的中文分词器

    1 什么是中文分词器 学过英文的都知道,英文是以单词为单位的,单词与单词之间以空格或者逗号句号隔开. 而中文的语义比较特殊,很难像英文那样,一个汉字一个汉字来划分. 所以需要一个能自动识别中文语义的分 ...

  10. js中的 Date对象 在 IOS 手机中的兼容性问题

    项目中有个时间相关的需求,很自然的用到了 js 中的 new Date() 获取时间,浏览器使用模拟手机模式访问没有问题,但是真机测试时发现,ios系统的手机无法显示时间. 定位问题发现是 new D ...