Testng中注释简介
1. @Before和@After 注释
这两个就比较多,一般用于在测试构件上。关于测试构件以后详细介绍,测试构件一般有测试之前的操作和测试运行之后的清除数据的操作。
Before分类有@BeforeSuite,@BeforeTest, @BeforeGroups,@BeforeClass,@BeforeMethod
After分类有@AfterSuite,@ AfterTest, @AfterGroups,@ AfterClass,@ AfterMethod
很明显,看这些注释名称就大概明白,至少每个注释的范围不同而已。
举例:
package com.java.learn; import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test; /**
* create by Anthony on 2017/10/29
*/
public class TestNG_Demo1 { @BeforeClass
public void setUp(){
System.out.println("启动测试的前提条件准备,一般放这个方法中");
} @AfterClass
public void tearDown(){
System.out.println("测试运行结束后的步骤,一般是恢复环境到测试开始之前的状态");
}
@Test
public void test1(){ System.out.println("Hello");
} }
2. @DataProvider注释
标记一个方法是用来给其他测试方法提供数据的方法。要求该方法必须返回是object[][].
3. @Factory
标记这个方法是一个工厂,方法必须返回的是一个对象。
4. @Listeners
在一个测试方法上定义一个监听。例如Selenium自动化测试中需要用到这个事件监听功能,方便我们输出日志。
5. @Parameters
描述了如何给一个测试方法传提参数。
6. @Test
在@Test下有很多选项可以设置,例如用例之间的依赖关系等。
这里举例一个@Parmeters
基于TestNG测试用例内容如下:
package com.java.learn; import com.sun.tracing.ProviderName;
import org.testng.annotations.*; /**
* create by Anthony on 2017/10/29
*/
public class TestNG_Demo1 { @Test
@Parameters({"Browser", "Server"})
public void test1(String browser, String server){
System.out.println("Hello");
System.out.println("这次启动浏览器是: "+browser+" 测试服务器地址是: "+server);
}
}
项目根目录下的testng.xml内容如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Default Suite">
<parameter name="Browser" value="Chrome" />
<parameter name="Server" value="https://www.baidu.com" />
<test name="Java_Learn">
<classes>
<class name="com.java.learn.TestNG_Demo1"/>
<!-- 添加不同测试类文件 --> </classes>
</test> <!-- Java_Learn -->
</suite> <!-- Default Suite -->
然后回到运行testng.xml,观察输出结果,发现配置在testng.xml中的参数已经成功地传入到测试方法中。其他的注释,以后遇到再写例子。主要是对这几个注释有点印象就可以,其实真实测试中用到最多的还是@Test这注释,在这个注释下有很多个选项来组合帮助我们解决一些用例执行的问题。接下来的文章,我们慢慢来学习@Test下的一些属性,重点介绍下@Test注释下的一些属性。
---------------------
作者:Anthony_tester
来源:CSDN
原文:https://blog.csdn.net/u011541946/article/details/78472569
Testng中注释简介的更多相关文章
- HTML注释简介
HTML注释简介 在编写HTML代码时,我们经常要在一些关键代码旁做一下注释,这样做的好处很多,比如:方便理解.方便查找或方便项目组里的其它程序员了解你的代码,而且可以方便以后你对自己代码进行修改 ...
- Spring中AOP简介与切面编程的使用
Spring中AOP简介与使用 什么是AOP? Aspect Oriented Programming(AOP),多译作 "面向切面编程",也就是说,对一段程序,从侧面插入,进行操 ...
- TestNG中 ITestListener 的使用
1.关于testng中ITestListener 的相关介绍文档,请参考: http://javadox.com/org.testng/testng/6.8.7/org/testng/ITestLis ...
- TestNG中的数据源DataProvider概述
http://blog.csdn.net/taiyangdao/article/details/52141711 在上一篇文章中,我们知道带参数的测试方法,可以在testng.xml配置文件中为其参数 ...
- java&testng中Assert
用testng中的assert做断言时,如果断言失败,则在当前方法中失败的语句后的语句将不会再执行: 如图: 看控制台输出语句:
- python学习之——计算给出代码中注释、代码、空行的行数
题目:计算给出代码中注释.代码.空行的行数 来源:网络 思路:注释行以 ‘#’开头,空行以 ‘\n’ 开头,以此作为判断 def count_linenum(fname): fobj = open(f ...
- C#程序中注释过多的8条理由
程序中中的注释,一般是有益处的,可以知晓程序的一些逻辑说明,或是参数解释.但是有些程序,因为注释太多,反而引起维护上的不方便,删掉了怕以后不能出现问题不好查找原因,不删除留在代码中,对程序的维护人员, ...
- 在html中注释对 <include XXXXXXXX />是没有影响的
在html中注释对 <include XXXXXXXX />是没有影响的
- Resharper中注释代码的快捷键
Resharper中 Visual Studio中 注释代码 Ctrl+Alt+/ Ctrl+E+C 取消注释 Ctrl+Alt+/ ...
随机推荐
- app后端设计(0)--总目录(转)
原文:http://blog.csdn.net/newjueqi/article/details/19003775 做了接近两年app相关的系统架构,api设计,先后在两个创业公司中工作,经历过手机网 ...
- python发送GET或POST请求以便干一些趣事
适合级别:入门,中级 关键字 :python, http, GET, POST, 安全, 模拟, 浏览器, 验证码,图片识别, google 1 此文不是关于黑客或安全话题的! 2 使用脚本程序发 ...
- 0602-Zuul构建API Gateway-Zuul Http Client、cookie、header
一.Zuul Http Client zuul使用的默认HTTP客户端现在由Apache HTTP Client支持,而不是已弃用的Ribbon RestClient.要使用RestClient或使用 ...
- python学习笔记(二)文件操作和集合
集合: 集合也是一种数据类型,一个类似列表东西,它的特点是无序的,不重复的,也就是说集合中是没有重复的数据 集合的作用: 1.它可以把一个列表中重复的数据去掉,而不需要你再写判断 2.可以做关系测试, ...
- phpstudy2016 redis扩展 windows
第一步,查看环境的信息. 第二步,根据线程是否安全.架构32位或64位下载redis扩展. http://pecl.php.net/package-stats.php 第三步,php_redis.dl ...
- appium格式化循环点击
- Codeforces Round #409 (rated, Div. 2, based on VK Cup 2017 Round 2) C Voltage Keepsake
地址:http://codeforces.com/contest/801/problem/C 题目: C. Voltage Keepsake time limit per test 2 seconds ...
- CodeForces - 343C Read Time (二分+贪心)
题意:有N个指针头,M个标记,用这N个针头扫描所有的标记,针头之间互不影响,求扫描完M个标记的最短时间 分析:二分搜答案,mid为时间限制,则只要所有的点在mid秒内被扫描到即可. 对于每个指针,若其 ...
- Tasks in parallel
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- NodeJS NPM HTTPS
npm config set registry http://registry.npmjs.org/