package roger.testng;

 import java.util.Random;

 import org.testng.ITestContext;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; /*
* 数据提供者在方法签名中声明了一个 ITestContext 类型的参数
* testng 会将当前的测试上下文设置给它
*
*/
public class TestDataProviderITestContext {
@DataProvider
public Object[][] randomIntegers(ITestContext context) {
String[] groups= context.getIncludedGroups();
int size = 2;
for (String group : groups) {
System.out.println("--------------" + group);
if (group.equals("function-test")) {
size = 10;
break;
}
} Object[][] result = new Object[size][];
Random r = new Random();
for (int i = 0; i < size; i++) {
result[i] = new Object[] {new Integer(r.nextInt())};
} return result;
} // 如果在 unite-test 组中执行, 将返回2个随机整数构成数组;
// 如果在 function-test 组中执行, 将返回 10 个随机整数构成数组
@Test(dataProvider = "randomIntegers", groups = {"unit-test", "function-test"})
public void random(Integer n) {
System.out.println(n);
} }

通过 testng.xml 指定运行 unite-test 组还是 function-test 组。

@DataProvider ITestContext 参数的更多相关文章

  1. DataProvider 传递参数

    package roger.testng; import org.testng.annotations.DataProvider; import org.testng.annotations.Test ...

  2. (三)利用@DataProvider传递参数

    具体实现如下: @DataProvider(name="couponListData") public Object[][] couponListData(){ //自己定义Obj ...

  3. TestNG中DataProvider的用法一

    目录 为什么要使用DataProvider DataProvider的常规用法 带Method参数的DataProvider 带ITestContext的DataProvider DataProvid ...

  4. 七、TestNG传递参数2

    数据提供者本身可以接受两个类型的参数:Method和ITestContext 在创建@DataProvider方法是可以有四种格式如图: 第一种在上一篇中有学到 1-Methode参数使用 @Data ...

  5. testNG的高级用法 --DataProvider

    @DataProvider Method参数 数据提供者的第一个参数是java.lang.reflect.Method,TestNG传递这个将调用的测试方法.如果您希望数据提供者根据不同的测试方法返回 ...

  6. testng的@Factory及其与@DataProvider的区别

    Factory,顾名思意就是工厂,也就是工厂方法,在软件开发中一般结合多态使用,用来根据不同的条件创建不同的类对象. 在这里,Factory一般用来创建一个测试类的多个实例,每个实例属性不同,以执行不 ...

  7. selenium 参数传递(testng.xml 、DataProvider )

    为了方便测试代码的复用性,常常采用参数化.传递参数给测试代码 有一下两种方法:1.通过配置XML文件实现.2.通过DataProvider 传递参数. 注意:DataProvider 传递参数返回的是 ...

  8. TestNG深入理解

    以下内容引自: http://blog.csdn.net/wanglha/article/details/42004695 TestNG深入理解 转载 2014年12月18日 13:56:11 参考文 ...

  9. TestNg学习

    参考:https://www.yiibai.com/testng/junit-vs-testng-comparison.html#article-start 1.JUnit缺点: 最初的设计,使用于单 ...

随机推荐

  1. JSON字符串转换为JSON对象

    一.JSON字符串转换为JSON对象 A:eval函数 eval函数可以直接将本质符合或者近似符合JSON格式的字符串转换为JSON对象,使用方式如: eval('(' + str + ')'); / ...

  2. [HTML] <input> 标签

      可选的属性 属性 值 描述 accept mime_type 规定通过文件上传来提交的文件的类型. align left right top middle bottom 不赞成使用.规定图像输入的 ...

  3. keil 51警告编译优化

    KeilC51中将工程中没有调用的函数不进行编译的方法 把Target Options中的Device页中选上"Use Extended Linker(LX51)instead of BL5 ...

  4. js add media query

    var msViewportStyle = document.createElement("style"); msViewportStyle.appendChild( docume ...

  5. 安装cocoaPods遇到的坑

    第一个坑 更换ruby源后,安装cocoaPods是出现以下错误:activesupport requires Ruby version >= 2.2.2 Ruby version >= ...

  6. About Interface

      http://www.codeproject.com/Articles/18743/Interfaces-in-C-For-Beginners   Interface can't have thi ...

  7. ZOJ 3609 Modular Inverse

    点我看题目 题意 : 这个题是求逆元的,怎么说呢,题目看着很别扭....就是给你a和m,让你求一个最小的x满足a-1≡x (mod m).或者ax≡1 (mod m).通俗点说呢,就是找一个最小的x, ...

  8. 独立两套DJANGO+CELERY配置(生产+测试)时要注意的一些细节

    1,生产的NGINX环境,要指定自己的目录,而不是PROJ默认的. upstream ism_host { server ; } server { listen ; server_name local ...

  9. 李洪强漫谈iOS开发[C语言-024]-表达式与赋值运算符

  10. easyui源码翻译1.32--Resizable(调整大小)

    前言 使用$.fn.resizable.defaults重写默认值对象 下载该插件翻译源码 源码 /** * jQuery EasyUI 1.3.2 * *翻译:qq 1364386878 Resiz ...