听说testNG比junit更好用,记录下

环境:springboot2.0+testNG6.8+maven+myeclipse

一 安装

(1)m'yeclipse安装testNg包,下载testNg包,拷贝到myeclpse目录下

(2)pom.xml导入testNg的依赖包

二,基本功能

(1)一些标注@BeforeClass,BeforeSuite,BeforeMethod,@Test(enabled=false)的执行顺序和junit基本一致的原理

(2)通过配置文件suite.xml执行suite,这里有个groups分组,包括类分组和方法分组,来灵活制定运行哪些测试case,也和原本预计的没啥区别

三,参数化

比较感兴趣额是参数化,2中常用的传参方式

1)suite.xml配置文件配置parameters,直接执行suite.xml

注意:这种方法必须执行xml文件,而不是java文件,否则报错

Parameter 'username' is required by @Test on method pamameterUse1 but has not been marked @Optional or defined

java代码

    @Parameters({ "username","password" })
@Test
public void pamameterUse1(String username,String password){
System.out.println(username+password);
}

suite.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite">
<test name="myparam">
<parameter name="username" value="mili"/>
<parameter name="password" value="123455"/>
<classes>
<class name="com.summit.suite.Parameter"></class>
</classes>
</test>
</suite>

执行suite.xml结果

mili123455

===============================================
(2)@DaraProvider注解实现传参,可直接执行java文件

    @DataProvider(name="milidata")
public Object[][] providerData(){
return new Object[][]{{"wangli","33333"},{"lixiao","44444"}}; }
@Test(dataProvider = "milidata")
public void testDataProvider(String name,String pwd){
System.out.println(name+pwd);
}

wangli33333
lixiao44444
PASSED: testDataProvider("wangli", "33333")
PASSED: testDataProvider("lixiao", "44444")

===============================================

(3)日常中需要把参数和脚本分离开,testNg怎么做呢?

testNG参数化的更多相关文章

  1. testng入门教程10 TestNG参数化测试

    在TestNG的另一个有趣的功能是参数测试.在大多数情况下,你会遇到这样一个场景,业务逻辑需要一个巨大的不同数量的测试.参数测试,允许开发人员运行同样的测试,一遍又一遍使用不同的值. TestNG让你 ...

  2. TestNG 参数化应用

    一.第一种参数化方式(testng.xml配置参数) 1.新建ParameterDemo04类 2.拷贝类的路径 3.testng.xml配置类地址及参数 <?xml version=" ...

  3. testng参数化及用例排序

    http://blog.sina.com.cn/s/blog_6966650401012ra0.html 一.一个简单的测试谷歌搜索 import org.testng.annotations.Tes ...

  4. TestNG参数化测试Spring应用Dubbo接口

    一.配置dubbo的Bean文件: 配置spring-dubbo.xml文件: <dubbo:reference interface="com.datatrees.basisdata. ...

  5. selenium2 TestNG参数化

    想要参数化,首先要加入@Parameters({"参数1","参数2"}) package com.demo.test; import java.util.co ...

  6. jenkins+maven+testng参数化执行测试用例

    碰到一个场景是,在做自动化中,一个系统往往需要兼容很多浏览器,如何在一个工程中,通过参数化去启动不同的浏览器,而无需改动配置文件呢? 我解决的思路是: 1.通过jenkins的参数传递给maven 2 ...

  7. TestNG参数化测试

    参数化有两种方法: 第一种:在xml文件中声明 第二种:用@DataProvider注解 先介绍第一种方法: ParameterTest类:用@Parameters({"name" ...

  8. testng参数化(提供测试数据)【转】

    testng提供测试数据的两个注释:@DataProvide和@Parameter   一.通过testng.xml中设置参数 (实际上testng.xml只是一个名字,可以起任何一个名字,只要是.x ...

  9. TestNG参数化测试【转】

    原文:http://www.yiibai.com/testng/20130916303.html 在TestNG的另一个有趣的功能是参数测试.在大多数情况下,你会遇到这样一个场景,业务逻辑需要一个巨大 ...

随机推荐

  1. Graveyard(poj3154)

    Graveyard Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 1289   Accepted: 660   Specia ...

  2. JVM 堆内存和非堆内存

    转载自:http://www.importnew.com/27645.html 堆和非堆内存 按照官方的说法:“Java 虚拟机具有一个堆(Heap),堆是运行时数据区域,所有类实例和数组的内存均从此 ...

  3. Java面试题阶段汇总

    初级面试题   Java面试题-基础篇一 Java面试题-基础篇二 Java面试题-集合框架篇三 Java面试题-基础篇四 Java面试题-基础篇五 Java面试题-javaweb篇六 Java面试题 ...

  4. 编译java代码出现 错误: 需要class, interface或enum 提示

          出现这种错误: 需要class, interface或enum 提示,一般分两种情况: 1.代码编写有误: 2.编码器选择编码格式有问题.(主要是用非记事本编写代码文件,存在编码格式转换问 ...

  5. python-中介者模式

    源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明: 面向对象设计中鼓励将行为分不到各个对象中,这种分布可能会导致对象间有许多连接.最 ...

  6. 高性能JavaScript(字符串和正则表达式)

    字符串连接 +/+=操作符连接 str += "one" + "two"; 这是常用的连接字符串的方法,它运行的时候会经历下面四个步骤: 1.在内存中创建一个临 ...

  7. css 解决图片下小空隙问题

    http://baijiahao.baidu.com/s?id=1581004863053583633&wfr=spider&for=pc 这篇讲的挺清楚,也有解决办法

  8. paste 命令

    Linux paste命令用于合并文件的列. paste指令会把每个文件以列对列的方式,一列列地加以合并. 语法: paste [-s][-d <间隔字符>][--help][--vers ...

  9. Hadoop 客户端问题

    错误: log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.Exception in ...

  10. SpringBoot中redis的使用介绍

    REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI C语言编写.遵守B ...