具体实现如下:

@DataProvider(name="couponListData")
public Object[][] couponListData(){
//自己定义Object[][]值
List<ListManage> couponManageList = ExcelUtil.simpleRead(AdminFileName.CouponManagePath, ListManage.class);
Object[][] o = new Object[couponManageList.size()][];
for(int i=0; i<couponManageList.size();i++){
JSONObject jsonObject = new JSONObject(true);
Object[] objects = new Object[3];
jsonObject.put("condition",couponManageList.get(i).getCondition());//code:券码编号,name:券码名字,customer_name:采购用户
jsonObject.put("content",couponManageList.get(i).getContent());
jsonObject.put("current_page",couponManageList.get(i).getCurrentPage());
jsonObject.put("page_size",couponManageList.get(i).getPageSize());
objects[0] = couponManageList.get(i).getCode();
objects[1] = couponManageList.get(i).getAccountInformation();
objects[2] = jsonObject;
o[i] = objects; }
return o;
} @Test(dataProvider = "couponListData")
public void couponList(String code,String accountInformation,JSONObject data) throws Exception{ }

不同类的用法:

数据驱动类DataProviderDemo .java

package com.yck.demo.data;

import org.testng.annotations.DataProvider;

import com.yck.demo.entity.TestDataVo;
import com.yck.demo.utils.MybatisUtil; public class DataProviderDemo { @DataProvider(name = "providerName")
public TestDataVo[][] demo() {
String statement = "mapper.TestDataMapper.getdataByCaseName";
TestDataVo vo1 = MybatisUtil.excuteSelect(statement, "1");
TestDataVo vo2 = MybatisUtil.excuteSelect(statement, "2");
TestDataVo vo3 = MybatisUtil.excuteSelect(statement, "3");
TestDataVo[][] dataVo = {{vo1},{vo2},{vo3}};
return dataVo; } }

测试用例类:

package com.yck.demo.testcase;

import java.io.IOException;
import java.io.InputStream; import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; import com.yck.demo.entity.TestDataVo; public class DemoTestCase { @Test(dataProvider= "providerName",dataProviderClass= com.yck.demo.data.DataProviderDemo.class)
public void test(TestDataVo vo) {
System.out.println(vo.getActual());
}
}

  

  

  

最新文章

  1. mysql NOW,CURRENT_TIMESTAMP,SYSDATE 之间的区别
  2. js常用
  3. WKWebView使用及注意点
  4. c++ 读取txt文件并输出到控制台
  5. 解决POI读取Excel如何判断行是不是为空
  6. poj 2104 K-th Number(主席树 视频)
  7. Linux软件安装方法小结(附:rpm详解)(转载)
  8. Java-在线聊天系统-非线程
  9. spring事物的传播行为
  10. 转载Sql 获取数据库所有表及其字段名称,类型,长度
  11. linux中文设置
  12. 读书笔记 SQL 事务理解
  13. 在WIN SERVER 2016上安装DOCKER(带过坑)
  14. HTML 笔记 基础1
  15. [Android App]IFCTT,即:If Copy Then That,是一个基于IFTTT的&quot;This&quot;实现
  16. JAVA进阶10
  17. OSG 改变窗口大小
  18. 无需AutoCAD,用C#生成DWG文件
  19. eclipse使用maven打包时去掉测试类
  20. 判断变量是否为 NaN

热门文章

  1. C语言经典笔试题目
  2. 带你学够浪:Go语言基础系列 - 8分钟学基础语法
  3. JavaScript的基础语法及DOM元素和事件
  4. Maven——pom.xml文件报错:Missing artifact:jar包
  5. 掌握了Docker Layer Caching才敢自称精通Dockerfile
  6. python爬取页面内容
  7. [JavaWeb基础] 009.Struts2 上传文件
  8. This的关键字的使用
  9. Rocket - debug - TLDebugModuleInner - ABSTRACTAUTO
  10. Rocket - debug - Custom