在做的接口自动化测试中,把测试用例维护在excel表格中,通过Easy POI把用例中的行转成实体类对象,再通过testNG的@DataProvider注解把测试用例数据传递给测试方法执行用例。
一、pom引入
<!-- 表格读取工具 -->
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>4.2.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-base</artifactId>
<version>4.2.0</version>
</dependency>
二、实体类设计
2.1 用例表格示例
2.2 实体类设计
easy poi: 通过@Excel属性能够和excel的表头映射上去
⚠️值的注意:实体类中需要有空参构造
只写了有参构造不写空参构造报错:Caused by: java.lang.RuntimeException: 创建对象异常
因为在读取excel数据的时候要利用空参构造创建对象
所以平时使用时要么不写任何构造,要么写空参+有参
public class CaseInfo {
//easy poi: 通过@Excel属性能够和excel的表头映射上去
@Excel(name = "序号(caseId)")
private int caseId;
@Excel(name = "接口模块(interface)")
private String interfaceName;
@Excel(name = "用例标题(title)")
private String title;
@Excel(name = "请求头(requestHeader)")
private String requestHeader;
//空参 有参构造方法
//getter setter
//......
}
三、读取excel数据
/**
* 读取Excel指定sheet里面的全部数据
* @param sheetNumber 读取第几个sheet,从0开始,表示我们常说的第1个
* @return list集合
*/
public static List<CaseInfo> readExcelSheetAllDatas(int sheetNumber){
//读取用例文件
File file = new File(XXX);
//读取/导入excel的一些参数设置
ImportParams importParams = new ImportParams();
//设置读取第几个sheet
importParams.setStartSheetIndex(sheetNumber);
//读取Excel里面的数据(Easy Poi)
List<CaseInfo> listDatas = ExcelImportUtil.importExcel(file, CaseInfo.class, importParams);
return listDatas;
}
3.1 常用的读取设置
ImportParams —— 导入excel的一些参数设置,读取第几个sheet,第几行...下面常用参数
- setStartSheetIndex 从第几个sheet开始读,只这一个参数,默认读取当前设置的一个sheet
- setStartRows 从第几行开始读取
- setReadRows 读取多少行
- setSheetNum 读取多个sheet用到
ExcelImportUtil.importExcel (file, 实体类.class, importParams)
—— 读取Excel里面的数据(Easy Poi),返回实体类对象的List集合文章来源:https://www.toymoban.com/news/detail-817579.html
文章来源地址https://www.toymoban.com/news/detail-817579.html
到了这里,关于自动化数据驱动|Easy POI读取接口测试用例的excel的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!