testng在类 里面的数据驱动

package driver_test;

import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; public class TestngDataProvider { /*@DataProvider(name="DP1")
public Object[][] createData() {
Object[][] createdata={
{ "001", "Jack", "London" }, { "002", "John", "New York" },
{ "003", "Mary", "Miami" }, { "004", "George", "california"}
};
return (createdata);
}*/ @DataProvider(name="DP1")
public Object[][] createData(){
return new Object[][] {
{ "001", "Jack", "London" }, { "002", "John", "New York" },
{ "003", "Mary", "Miami" }, { "004", "George", "california"}
};
} @Test(dataProvider="DP1")
public void testcase(String empid, String empName, String city){
System.out.println("empid");
System.out.println("empName");
System.out.println("city");
} }

右键------->RunAs-------->testng

运行结果如下:

empid
empName
city
empid
empName
city
empid
empName
city
empid
empName
city
PASSED: testcase("001", "Jack", "London")
PASSED: testcase("002", "John", "New York")
PASSED: testcase("003", "Mary", "Miami")
PASSED: testcase("004", "George", "california") ===============================================
Default test
Tests run: 4, Failures: 0, Skips: 0
=============================================== ===============================================
Default suite
Total tests run: 4, Failures: 0, Skips: 0
===============================================

另外一种,在dataprovider里面写入方法

package driver_test;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set; import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; public class driver_data { @DataProvider(name = "iterator")
public Iterator<Object[]> getData() {
Set<Object[]> set = new HashSet<Object[]>();
set.add(new String[] { "hello" });
Iterator<Object[]> iterator = set.iterator();
return iterator;
} @Test(dataProvider = "iterator")
public void testIteraorData(String iterator) {
System.err.println("iterator .. " + iterator); }
}

右键------->RunAs-------->testng

运行结果如下:

iterator  .. hello
PASSED: testIteraorData("hello") ===============================================
Default test
Tests run: 1, Failures: 0, Skips: 0
=============================================== ===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================

testng入门教程15数据驱动的更多相关文章

  1. testng入门教程16数据驱动(把数据写在xml)

    testng入门教程16数据驱动(把数据写在xml) testng入门教程16数据驱动(把数据写在xml)把数据写在xml文件里面,在xml文件右键选择runas---testng执行 下面是case ...

  2. testng入门教程14数据驱动(不同文件)

    数据与test脚本不在同一文件时,下面是数据: package data_driver_two_parts; import org.testng.annotations.DataProvider; p ...

  3. testng入门教程12 TestNG执行多线程测试

    testng入门教程 TestNG执行多线程测试 testng入门教程 TestNG执行多线程测试 并行(多线程)技术在软件术语里被定义为软件.操作系统或者程序可以并行地执行另外一段程序中多个部分或者 ...

  4. TestNG 入门教程【转】

    TestNG 入门教程[转] 国庆7天假期,大部分朋友都出去旅游了,微信圈里全是晒旅游的照片, 东南亚游,欧洲游呀,真是羡慕呀. 悲惨的我只去了上海野生动物园, 在家休息,利用这段假期,把之前学过的东 ...

  5. ABP入门教程15 - 小结

    点这里进入ABP入门教程目录 效果预览 至此,ABP入门教程的CURD(增删改查)示例已完成,效果如下 登录 首页 查询课程 新增课程 修改课程 删除课程 阶段总结 关键步骤: 领域层创建实体基础设施 ...

  6. testng入门教程13同文件数据驱动

    下面是@DataProvider有name和没有name时 有name的时候可以引用name 即:@DataProvider(name="testData")----------& ...

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

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

  8. testng入门教程9 TestNG依赖测试

    有时候,你可能需要在一个特定的顺序调用方法在测试案例,或你想分享一些数据和方法之间的状态.TestNG支持这种依赖测试方法之间的显式依赖它支持声明. TestNG允许指定依赖,无论与否: 使用属性de ...

  9. testng入门教程8 TestNG异常测试

    TestNG跟踪异常处理代码提供了一个选项.可以测试是否需要代码抛出异常或不抛出. @Test注释expectedExceptions 参数一起使用.现在,让我们来看看@Test(expectedEx ...

随机推荐

  1. Android 冷启动时间优化

    一 下载工具: 1.MaterialColdStart https://github.com/DreaminginCodeZH/MaterialColdStart 2.AndroidSVGScript ...

  2. sencha touch 自定义事件

    需要添加自定义事件可以如下: this.fireEvent('back', this); 此方法第一个参数为你想要监听的事件,之后的参数为你想要传递的参数一般来说第一个参数最好是控件本身. 同理这个方 ...

  3. 3-2 axios基础介绍

    1.静态引用 <script src="https://unpkg.com/axios/dist/axios.min.js"></script> 2.npm ...

  4. Json.NET Deserialize时如何忽略$id等特殊属性

    由于$id.$ref等是默认Json.NET的特殊属性,在反序列化时不会将其对应的值填充,例如: [DataContract] public class MyObject { [DataMember( ...

  5. Installed .NET Framework 4.5 Ajax POST IIS hang

    去年我已写过一篇关于安装.NET Framework 4.5后特定场景Ajax POST的挂起问题 => http://www.cnblogs.com/junchu25/archive/2012 ...

  6. C程序设计语言习题(3-3)

    编写函数expand(s1,s2), 将字符串s1中类似于a-z一类的速记符号在字符串s2中扩展为等价的完整列表abc……xyz.该函数可以处理大小写字母和数字,并可以处理a-b-c.a-z0-9与a ...

  7. humid vs wet vs moist

    想表达天气很潮湿该用哪个词呢? 跟一个美国人聊天,我说wet他没听清,然后我说moist,然后他反应过来了:"oh,humid" 那~还是用humid吧

  8. JavaScript之prototype对象

    简述prototype: 在js中,每个构造函数都有一个原型属性prototype,因为这个属性的值通常是一个对象,又叫原型对象!你不需要显式的去定义原型对象,因为每个构造函数都会一个原型属性,通常在 ...

  9. Scala学习笔记(2)-类型注意

    Scala类型注意事项: 1.Any是绝对的根,所有的其他可实例化类型均有AnyVal和AnyRef派生. 2.所有AnyVal的类型成为值类型(所有数值类型.char.Booble和Unit) 3. ...

  10. 蓝桥杯 - G将军有一支训练有素的军队 - [树形DP]

    G将军有一支训练有素的军队,这个军队除开G将军外,每名士兵都有一个直接上级(可能是其他士兵,也可能是G将军).现在G将军将接受一个特别的任务,需要派遣一部分士兵(至少一个)组成一个敢死队,为了增加敢死 ...