1--Test NG--常见测试和注解
第一:注解
(1)@test
(2)@BeforeMethod,@AfterMethod
(3)@BeforeClass,@AfterClass
(4)@BeforeSuite,@AfterSuite
第二:套件测试
(1) SuiteConfig:公共方法
public class SuiteConfig{
@BeforeSuite
public void beforesuit(){
system.out.println("beforesuit 运行啦");
}
@AfterSuite
public void aftersuit(){
system.out.println("aftersuit 运行啦");
}
}
(2) LoginTest:
public class LoginTest{
@Test
public void logintaobao(){
system.out.println("login taobao");
}
}
(3) PayTest
public class PayTest{
@Test
public void paysuccess(){
system.out.println("zhifubao success");
}
}
(4) resource:Testng.xml(名字随意)
<?xml version="1.0" encoding="UTF-8" ?>
<suite name="test">
<test name ="login">
<classes>
<class name="com.curse.testng.suite.suiteconfig"/>
<class name="com.curse.testng.suite.LoginTest"/>
</classes>
</test>
<test name ="pay">
<classes>
<class name="com.curse.testng.suite.suiteconfig"/>
<class name="com.curse.testng.suite.PayTest"/>
</classes>
</test>
</suite>
右键执行testng.xml,结果如下:
beforesuit 运行啦
login taobao
zhifubao success
aftersuit 运行啦
如果在suiteconfig文件中增加beforetest和aftertest,执行结果为:
beforesuit 运行啦
beforetest
login taobao
aftertest
beforetest
zhifubao success
aftertest
aftersuit 运行啦
第三:忽略测试
@test(enabled=false)
第四:分组测试
(1)group在方法上
public class groupsonMethod{
@test(groups="server")
public void test1(){
system.out.println("test1");
}
@test(groups="server")
public void test2(){
system.out.println("test2");
}
@test(groups="client")
public void test3(){
system.out.println("test3");
}
@beforegroups("server")
public void beforegroupsonserver(){
system.out.println("beforeservergroups");
}
@aftergroups("server")
public void aftergroupsonserver(){
system.out.println("afterservergroups");
}
}
运行结果:
beforeservergroups
test1
test2
afterservergroups
test3
(2)groups在类上
@test(groups="stu")
public class groupsonclass1{
}
testng.xml:
<test name="onlyrunstu">
<groups>
<run>
<include name="stu"/>
</run>
</groups>
</test>
第五:异常测试
第六:依赖测试
public class DpendTest{
@test
public void test1(){
system.out.println("test1");
throw new RuntimeException();//打印要写在异常前面,因为抛出异常后,后边的代码都不执行
}
@test(dependsOnMethods={"test1"})
public void test2(){
system.out.println("test2");
}
}
结果:test1
test1执行,test2被忽略了,因为test2的依赖测试test1抛出了异常,执行失败了
第七: 超时测试
public class TimeOutTest{
@test(timeout=3000)//单位为ms
public void testsuccess(){
Thread.sleep(millis:2000);
system.out.println("test1");
}
@test(timeout=2000)//单位为ms
public void testfailed(){
Thread.sleep(millis:3000);
system.out.println("test1");
}
}
1--Test NG--常见测试和注解的更多相关文章
- 使用Spring+Junit4.4进行测试(使用注解)
http://nottiansyf.iteye.com/blog/345819 使用Junit4.4测试 在类上的配置Annotation @RunWith(SpringJUnit4ClassRunn ...
- 用Spring+Junit4.4进行测试(使用注解)
http://nottiansyf.iteye.com/blog/345819 使用Junit4.4测试 在类上的配置Annotation @RunWith(SpringJUnit4ClassRunn ...
- maven解析xml+测试test+注解
条件:maven项目 测试图: 创建maven项目,在maven项目中scr目录下有main.test(没有就创建) 一.解析XML文件方式 在main目录下有java.resources.webap ...
- spring + myBatis 常见错误:注解事务不回滚
最近项目在用springMVC+spring+myBatis框架,在配置事务的时候发现一个事务不能回滚的问题. 刚开始配置如下:springMVC.xml配置内容: spring.xml配置内容 从上 ...
- web端常见测试
一.登录注册功能 1.页面调转 2.tab键与enter键 3.密码加密显示,是否支持复制粘贴 4.账号密码校验 5.刷新页面,更新验证码 二.界面测试 1.样式.颜色.整体布局风格 2.最大化.最小 ...
- mac使用brew安装配置常见测试工具
Homebrew 包管理工具可以让你安装和更新程序变得更方便,目前在 OS X 系统中最受欢迎的包管理工具是 Homebrew. 安装 在安装 Homebrew 之前,需要将 Xcode Comman ...
- Spring整合JUnit4测试使用注解引入多个配置文件
转自:https://kanpiaoxue.iteye.com/blog/2151903 我们使用spring写junit单测的时候,有的时候我们的spring配置文件只有一个.我们在类的注释上面会这 ...
- java 日志脱敏框架 sensitive-v0.0.4 系统内置常见注解,支持自定义注解
项目介绍 日志脱敏是常见的安全需求.普通的基于工具类方法的方式,对代码的入侵性太强.编写起来又特别麻烦. 本项目提供基于注解的方式,并且内置了常见的脱敏方式,便于开发. 特性 基于注解的日志脱敏. 可 ...
- Java日志脱敏框架 sensitive-v0.0.4 系统内置常见注解,支持自定义注解
项目介绍 日志脱敏是常见的安全需求.普通的基于工具类方法的方式,对代码的入侵性太强.编写起来又特别麻烦. 本项目提供基于注解的方式,并且内置了常见的脱敏方式,便于开发. 特性 基于注解的日志脱敏. 可 ...
随机推荐
- helm安装redis+Sentinel集群搭建
一.redis集群特点 数据 在多个Redis节点之间自动分片 sentinel特点: 它的主要功能有以下几点 不时地监控redis是否按照预期良好地运行; 如果发现某个redis节点运行出现状况,能 ...
- matlab 三维激光雷达点云的地面与障碍物检测
基于激光雷达的地面与障碍物检测 这个例子告诉我们如何去检测地平面并且找到三维LIDAR数据中与车相近的障碍物. 这个过程能够方便我们对汽车导航的可行驶区域规划. 注:每一帧的雷达属于都被存储为三维的雷 ...
- [luogu P3065] [USACO12DEC]第一!First!
[luogu P3065] [USACO12DEC]第一!First! 题目描述 Bessie has been playing with strings again. She found that ...
- 从零开始学Python 一
一.安装 1.进入Python官网下载环境:https://www.python.org 2.根据自己的电脑选择安装版本,然后安装即可. 二.运行第一个程序 1.安装完Python,会自带一个编辑器, ...
- Surface RT2使用情况
Surface RT2是一个6年的古董了,暂时还能使用的功能包括但不限于一些xbox小游戏,ppt阅读(加载慢),pdf阅读(加载慢),word阅读. 2018/6/16 爱奇艺关闭了大部分win8R ...
- React-Error
1. react创建一个单页应用,官网给的命令是ngx create-react-app my-project 2. window上表示,安装失败 3.解放办法:npm install -g crea ...
- 爬取字段和图片 spider_getModelInformation
import urllibimport urllib2import re class Spider: def getPage(self,pageIndex): url="http://mm. ...
- 编译安装LAMP
编译安装MariaDB 创建MariaDB安装目录.数据库存放目录.建立用户和目录 先创建一个名为mysql且没有登录权限的用户和一个名为mysql的用户组,然后安装mysql所需的依赖库和依赖包,最 ...
- 使用AES加密的勒索类软件分析报告
报告名称: 某勒索类软件分析报告 作者: 李东 报告更新日期: 样本发现日期: 样本类型: 样本文件大小/被感染文件变化长度: 样本文件MD5 校验值: da4ab5e31793 ...
- JAVA同步锁机制 wait() notify() notifyAll()
wait() notify() notifyAll() 这3个方法用于协调多个线程对共享数据的存取,所以必须在synchronized语句块中使用. wait() 必须在synchronized函数或 ...