接口测试3-2csv格式

csv文件数据

IntellJ IDEA打开终端:view-tool windows-terminal,可以在终端中查看文件路径

阿里 马云

京东 刘强东

京东 马化腾

#java
//读取csv文件,该模版来自网易高手
package utils; import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List; /**
* @author by LiHe on 2018/8/11.16:50
*/
public class CsvReader { public static Object[][] getTestData(String fileName) throws IOException { List<Object[]> records = new ArrayList<Object[]>();
String record;
/**
* 设定UTF-8字符集,使用带缓冲区的字符输入流BufferedReader读取文件内容
*/ BufferedReader file = new BufferedReader(new InputStreamReader(new FileInputStream(fileName), "UTF-8")); /**
* 目录要src开始,如src/test/java/testdata/testforpeople.csv
* 忽略读取CSV文件的标题行(第一行)
*/ file.readLine(); /**
* 遍历读取文件中除第一行外的其他所有行内容 并存储在名为records的ArrayList中
* 每一个recods中存储的对象为一个String数组
*/
while ((record = file.readLine()) != null) {
String fileds[] = record.split(",");
records.add(fileds);
}
file.close(); /**
* 定义函数返回值,即Object[][]
* 将存储测试数据的list转换为一个Object的二维数组
*/ Object[][] result = new Object[(records.size())][];
for (int i = 0; i < records.size(); i++) {
result[i] = records.get(i);
}
return result;
} }
//测试代码
package testdata; import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; import java.io.IOException; public class CsvTestdemo {
@DataProvider(name="csv")
public Object[][] testData() throws IOException {
return CsvReader.ggetTestData("src/test/java/testdata/testforpeople.csv");
}
@Test(dataProvider="csv")
public void test(String compay,String people){
System.out.println(compay+"\t"+people);
}
}
  • 阿里 马云

    京东 刘强东

    京东 马化腾

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

Default Suite

Total tests run: 3, Failures: 0, Skips: 0

=============================================== *

上一篇:LeetCode Missing Ranges


下一篇:sqoop从hive导入数据到mysql时出现主键冲突