TestNG基础001
一、什么是TestNG
TestNG是一个强大的测试框架,NG是指Next Generation ,被视为是Junit的升级版本
二、TestNG适用范围
- Java单元测试
- 接口测试
- web自动化测试(selenium)
- 手机app自动化测试(appuim)
三、TestNG下载和安装
1. 打开菜单helpInstall New SoftWare..
2. 在Work with中输入http://beust.com/eclipse,点击Add
3. 在弹出的窗口中输入TestNG,点击OK
4. 勾选TestNG复选框,点击Next,Next
5. 接受协议,点击Finish,等待安装,完成。
注:如果出现warning,点击install anyway
验证:重启Eclipse后,Windows—preferences下看到有TestNG列出
四、TestNG注解
控制用例内部代码执行顺序的注解
@Test
– 测试的核心,被标注的方法会被统计在testng的报告中
@ BeforeMethod:
– 在每一个测试方法被触发前执行此注解下的方法
@ AfterMethod
– 在每一个测试方法执行完毕后,执行此注解下的方法。
@ BeforeClass
– 在当前类中第一个测试方法被触发前执行此注解下的方法
@ AfterClass
– 当前类中所有测试方法执行完毕后,执行此注解下的方法
针对测试套件 test suite的注解
@ BeforeTest
– 在运行被<test> 标签包括的所有类中第一个测试方法前,执行此注解下的方法
@ AfterTest
– 当被<test> 标签包括的所有类中的所有测试方法都运行后,执行此注解下的方法。
@ BeforeSuite
– 在属于此 test suite中的所有测试方法执行前,执行此注解下的方法。
@ AfterSuite
– 在运行完此test suite中所有的测试方法后,执行此注解下的方法。
五、创建TestNG类
1.在包名上右键--New--Other--选择TestNG class

代码示例:
1 package com.xiaolintest.testNgdemo;
2
3 import org.testng.annotations.Test;
4 import org.testng.annotations.BeforeClass;
5 import org.openqa.selenium.WebDriver;
6 import org.openqa.selenium.chrome.ChromeDriver;
7 import org.testng.annotations.AfterClass;
8
9 public class OpenWebsiteTestNG {
10 WebDriver driver;
11
12 @BeforeClass
13 public void beforeClass() {
14 //将初始化driver的放在最前面
15 System.setProperty("webdriver.chrome.driver", "E:\\BrowserDriver\\chromedriver.exe");
16 driver = new ChromeDriver();
17 }
18
19 @Test
20 public void openWebsite() {
21 driver.get("http://www.eteams.cn/");
22
23 driver.manage().window().maximize();// 页面最大化
24 }
25
26 @AfterClass
27 public void afterClass() {
28 //关闭浏览器
29 driver.quit();
30 }
31
32 }
将testNG类转成TestNG.xml
选择testNG类右键--TestNG--Convert to TestNG
将testNG类转成xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
<test thread-count="5" name="Test">
<classes>
<class name="com.xiaolintest.testNgdemo.OpenWebsiteTestNG"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
1.Test Suite由一个或多个Test组成
2.Test由一个或多个测试Class组成
3.一个测试Class由一个或者多个测试方法组成
执行xml
选择上面生成的xml文件右键--run as --TestNG Suite
执行结果如图:

TestNG基础001的更多相关文章
- C++ 系列:C++ 基础 001
Copyright © 1900-2016, NORYES, All Rights Reserved. http://www.cnblogs.com/noryes/ 欢迎转载,请保留此版权声明. -- ...
- TestNg练习001
15分钟入门TestNG 阅读目录 TestNG介绍 在Eclipse中在线安装TestNG 在Eclipse中离线安装TestNg TestNG最简单的测试 TestNG的基本注解 TestNG中如 ...
- C/C++学习之基础-001
1.C++虚函数的工作原理 虚函数(virtual function)需要虚函数表(virtual table)才能实现.如果一个类有函数声明成虚拟的,就会生成一个虚函数表,存放这个类的虚函数地址.若 ...
- java基础-001
一.区分final . finally . finalize 1.关键字final Java语言的关键字final可以用于变量.类或方法,但是含义会有所不同. -用于变量:一旦初始化,变量值就不能修 ...
- 算法Sedgewick第四版-第1章基础-001递归
一. 方法可以调用自己(如果你对递归概念感到奇怪,请完成练习 1.1.16 到练习 1.1.22).例如,下面给出了 BinarySearch 的 rank() 方法的另一种实现.我们会经常使用递归, ...
- testng基础知识:注解的执行顺序
1. 单类,无继承父子关系 code: public class basicTest { @BeforeSuite(alwaysRun = true) public void beforeSuite_ ...
- [java基础] 001 - 记一次堆栈溢出异常(StackOverFlowError)
上午经理发来一个任务,解决某个接口异常,此接口第一次调用成功返回: {ret=Y, orderResultList=[{itemno=31920190521083622032, sub_msg=成功, ...
- javascript基础(001)-js加减乘除注意事项(含类型转换)
一,加减乘除注意事项: 1.任意类型'+'字符串都被强转字符串 2.数字和布尔类型'+'undefined 结果为 NaN (Not a Number) 3.'-','*','/'操作会尝试把数据转为 ...
- 安卓逆向基础(001)-APK安装流程
1.在/data/app下以报名为文件夹名新建文件夹 APK包存放在这里 以及lib文件 存放so 2./data/dalvik-cache 存放dex dex是dalvik虚拟机可执行文件 3./d ...
随机推荐
- 论鸿蒙OS在某些人眼中的样子
对于鸿蒙OS,博客园有一篇文章<为鸿蒙OS说两句公道话(我对鸿蒙OS的一些看法)>.有兴趣的可以看看. 在这篇文章中,个人觉得最精彩的不是文章本身,而是评论内容. 下面我挑一些出来,和大家 ...
- 【RMAN】使用RMAN备份将数据库不完全恢复到指定时间点
RMAN作为Oracle强大的备份恢复工具,可以协助我们恢复数据库到指定时间点,这便是Oracle不完全恢复的一种体现,通过这种方法可以找回我们曾经丢失的数据.这里以找回误TRUNCATE表数据为例给 ...
- 201871030138-杨蕊媛 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告
项目 内容 班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST 这个作业要求链接 https://www.cnblogs.com/nwnu-daizh ...
- HarmonyOS技术特性
HarmonyOS技术特性 硬件互助,资源共享 多种设备之间能够实现硬件互助.资源共享,依赖的关键技术包括分布式软总线.分布式设备虚拟化.分布式数据管理.分布式任务调度等. 分布式软总线 分布式软总线 ...
- NVIDIA空中导航SDK改造5G通信
NVIDIA空中导航SDK改造5G通信 Transforming Next-Generation Wireless with 5T for 5G and the NVIDIA Aerial SDK N ...
- java后端知识点梳理——java基础
面向对象 java三大特性 封装: 将事务封装成一个类,达到解耦,隐藏细节的效果.通过get/set等方法,封装了内部逻辑,并保留了特定的接口与外界联系. 继承: 从一个已知的类中派生出一个新的类,新 ...
- 把axios获取到的数据渲染到列表上,使用better-scroll实现列表左右滑动
问题:axios数据请求完后,页面是有数据的,即页面看到有数据,但是better-scroll却无法滚动 原因:这是因为在数据更新前,better-scroll已经渲染完成了 解决方法:这是个异步问题 ...
- OpenCV随笔
创建一个窗口#zeros(shape,dtype=float,order='C')#shape:形状,dtype:数据类型,可选参数,默认numpy.float64img = np.zeros((50 ...
- 【模板】map入门
map 在数据特别庞大,数组已经满足不了的某些情况下codevs p1230,可以用上map; 我们可以将map容器作为一个有序的映射表,看作为一个下表可以是任意类型的数组: map是一个红黑树,单次 ...
- WPF中选择文件和选择文件夹的方法
最近从winform转WPF,遇到了各种各样的问题.然而网上的关于WPF的资料少之又少,甚至连基本的文件选择操作,百度搜索的首页都没有一个比较好的方法.所以,踩了几个坑之后,我把我得到的方法分享给大家 ...