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 ...
随机推荐
- 如何使用 IoC
创建Maven工程,pom.xml添加依赖 <?xml version="1.0" encoding="UTF-8"?> <project x ...
- Go语言中的单例模式
Go语言中的单例模式 在过去的几年中,Go语言的发展是惊人的,并且吸引了很多由其他语言(Python.PHP.Ruby)转向Go语言的跨语言学习者. Go语言太容易实现并发了,以至于它在很多地方被不正 ...
- pika详解 (一)
pika详解 (一) 本文链接:https://blog.csdn.net/comprel/article/details/94592316 pika pika处理消息可以简单分为以下几个步骤: 我们 ...
- 目标检测coco数据集点滴介绍
目标检测coco数据集点滴介绍 1. COCO数据集介绍 MS COCO 是google 开源的大型数据集, 分为目标检测.分割.关键点检测三大任务, 数据集主要由图片和json 标签文件组成. c ...
- CPU消耗,跟踪定位理论与实践
CPU消耗,跟踪定位理论与实践 一.性能指标之资源指标定位方案 1.打tprof报告方法 抓取perfpmr文件 60秒. perfpmr.sh 60 从结果文件中取出tprof.sum 或直接抓取t ...
- windows 设置nginx开机自启动
将Nginx设置为Windows服务 需要借助"Windows Service Wrapper"小工具,项目地址: https://github.com/kohsuke/winsw ...
- Django(59)验证和授权
验证和授权概述 Django有一个内置的授权系统.他用来处理用户.分组.权限以及基于cookie的会话系统.Django的授权系统包括验证和授权两个部分.验证是验证这个用户是否是他声称的人(比如用 ...
- 牛客网sql实战参考答案(mysql版):1-15
1.查找最晚入职员工的所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天(sqlite里面的注释为--,mysql为comment) CREATE TABLE `employees ...
- redHat6设置ip地址
产生需求的原因: 最近新安装了redhat6,可是在相互ping的过程中发现redhat6的并没有配置静态的ip地址,于是我尝试使用windows的方式去配置,可效果并不如意,于是如何在redhat6 ...
- npm 操作代码
npm cache clean -force //强制清除缓,比如安装echarts失败后,清除,在安装