selenium3 TestNG 介绍与配置
一、TestNG介绍
我之前有学习过Junit,Nunit 这些工具,现在想看看TestNG,那么TestNG是什么呢?他们之间有什么区别呢?
TestNG(Next Generation)是一个测试框架,它受到JUnit和NUnit的启发,而引入了许多新的创新功能,如依赖测试,分组概念,使测试更强大,更容易做到。 它旨在涵盖所有类别的测试:单元,功能,端到端,集成等…(简而言之,就是TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便,Java中已经有一个JUnit的测试框架了。 TestNG比JUnit功能强大的多。测试人员一般用TestNG来写自动化测试。开发人员一般用JUnit写单元测试。)
区别:
1)三者都是独立于测试框架,在市场上都可以免费得到。
2)TestNG和Junit在JAVA上使用,Nunit在C#上使用
3)Junit是Eclipse自带工具,TestNG需要自己安装插件
4)相对TestNG而言,Junit的注释很少
5)Junit不能生成html格式报告,TestNG能生成丰富的html报告
既然是学习Test NG,这边也简单介绍一下TestNG的特点。
TestNG的特点
1)注释,很多注释提供
2)支持数据驱动测试(@DataProvider)
3)支持变量
4)自动生成测试报告
5)通过配置testng.xml,我们可以只执行测试失败的用例,可以说非常好了
6)支持很多IDE工具(Eclipse等)
7)默认JDK支持监控运行和日志
8)独立的程序服务器测试方法(API)
二、TestNG在Eclipse上的安装配置
我用的Eclipse是Version: Oxygen.3a Release (4.7.3a)。里面好像自带了testNG(不记得是不是之前自己装过了),安装也很简单。
步骤一,打开Eclipse,点击Help-Install New Software
步骤二:打开浏览器,输入testng官网:http://testng.org/doc/download.html
找到下图,拷贝红框url到Eclipse中需要输入站点那个界面上。

然后点击Add,再点击TestNG就好了,next,finish就好了。

安装完成之后,重启Eclipse,选择一个包鼠标右键,如果看到底部倒数第二项有TestNG这个菜单,说明安装成功。
三、TestNG测试运用
在一个包下,鼠标右键,点击TestNG,然后选择Create TestNG class

默认TestNG没有添加到当前项目的lib中,需要安装如图添加。

注意:在BeforeClass中写启动浏览器脚本。在AfterClass中写退出浏览器代码,在@Test中写我们测试脚本,可以添加多个@Test的测试函数。
下面是我写的测试脚本,
package Test;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterClass;
public class FirstTestNG {
WebDriver driver;
@Test
public void OpenBaidu() {
driver.get("https://www.baidu.com");
driver.findElement(By.id("kw")).sendKeys("Selenium");
driver.findElement(By.id("su")).click();
}
@BeforeClass
public void beforeClass() {
driver=new FirefoxDriver();
driver.manage().window().maximize();
}
@AfterClass
public void afterClass() {
driver.quit();
}
}
可以右键Run as -TestNG test,运行结果控制台输出如下:

selenium3 TestNG 介绍与配置的更多相关文章
- TestNg线程池配置、执行次数配置、超时配置
使用注解的方式对TestNg线程池配置.执行次数配置.超时配置 注:使用注解来控制测试方法运行的次数和超时时间,timeOut在单线程或者多线程模式下都可用,threadPoolSize设置了线程池的 ...
- 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma
1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...
- python学习第二讲,pythonIDE介绍以及配置使用
目录 python学习第二讲,pythonIDE介绍以及配置使用 一丶集成开发环境IDE简介,以及配置 1.简介 2.PyCharm 介绍 3.pycharm 的安装 二丶IDE 开发Python,以 ...
- OSPF协议介绍及配置 (上)
OSPF协议介绍及配置 (上) 一.OSPF概述 回顾一下距离矢量路由协议的工作原理:运行距离矢量路由协议的路由器周期性的泛洪自己的路由表,通过路由的交互,每台路由器都从相邻的路由器学习到路由,并且加 ...
- x-pack 功能介绍及配置传输层安全性(TLS / SSL)
x-pack 功能介绍及配置传输层安全性(TLS / SSL) 学习了:https://blog.csdn.net/wfs1994/article/details/80411047
- mysql多实例介绍及配置
mysql多实例介绍及配置 1.mysql多实例介绍 1.1 什么是mysql多实例 mysql多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过 ...
- 13.LAMP架构介绍及配置
LAMP架构介绍及配置 LAMP简介与概述 LAMP概述 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境. LAMP是一 ...
- Java+maven+selenium3+testng 自动化测试环境IDEA
idea .java环境变量jdk maven安装及环境变量配置这里就不多说了,网上有很多教程 这里我们只检测一下java.maven环境是否安装成功 win+R,运行cmd命令行:mvn -v ...
- TestNG系列(一)TestNG+Eclipse环境配置
前提 1.JDK的安装与环境变量的配置 2.Eclipse的下载与安装 以上这些是基础中的基础,不再详细介绍. Eclipse安装TestNG插件 打开eclipse--->help---> ...
随机推荐
- mysql中replace替换字符串更改方法
MySQL中update替换部分字符串replace的简单用法 近日,遇到了需要将部分字符串替换为另外的字符,平时用的最多的是直接update整个字段值,在这种情况下效率比较低,而且容易出错.其实my ...
- Docker:容器的四种网络类型 [十三]
一.None类型 简介:不为容器配置任何网络功能,--net=none 1.创建容器 docker run -it --network none busubox:latest 2.功能测试 [root ...
- 【1】JDK8 HashMap扩容优化
JDK1.7 VS JDK1.8 比较 优化概述: resize 扩容优化 引入了红黑树,目的是避免单条链表过长而影响查询效率 解决了resize时多线程死循环问题,但仍是非线程安全的 这里主要讲讲扩 ...
- 前端面试题整理—JavaScript篇(一)
1.JS的基本数据类型和引用数据类型有哪些,两者区别 基本数据类型->string.number.Boolean.null.undefined.symbol 引用数据类型->array.o ...
- Promise异步操作
Promise是es6中新增加的类(new Promise),目的为了管理JS中异步编程,也叫“Promise”设计模式 Promise用来解决异步问题.本身是同步的,只是用来管理异步编程的一种模式 ...
- java包
首先是java.io java.lang java.util java.lang.math
- 使用Jmeter监测服务器性能指标
jmeter监控服务器CPU.内存等性能参数,需要安装一些插件 插件名:JMeterPlugins-Extras,JMeterPlugins-Standard 以及ServerAgent. 下载地址: ...
- SqlServer中创建非聚集索引和非聚集索引
聚集索引与非聚集索引,其实已经有很多的文章做过详细介绍. 非聚集索引 简单来说,聚集索引是适合字段变动不大(尽可能不出现Update的字段).出现字段重复率小的列,因为聚集索引是对数据物理位置相同的索 ...
- 金蝶K3 WISE 快速登录
金蝶K3 WISE 快速登录 "C:\Program Files (x86)\Kingdee\K3ERP\k3main.exe" -LoginUser|账套号|账套密码|用户账号| ...
- ansible的Filter
filter的格式: value..| filter() 在python中就是类的实例化 filter(self,*args,**kwargs) self就是filter中管道符前的value. ...