Java接口自动化测试框架系列(二)表格设计与数据读取
2022/9/2 1:23:15
本文主要是介绍Java接口自动化测试框架系列(二)表格设计与数据读取,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、测试系统分析
不同系统有不同的接口,通过分析这些接口,提取共同点可以得到不同地区的系统共有的接口。
如:登录、登出、用户信息完善等接口
二、表格设计
- 不同列定义不同的参数
- 不同行定义不同的地区
- 由于不同地区的接口加密方式不同,所以直接在表格中规定接口的地区、接口地址、验签方式(encryption_type)、密钥等字段。
三、表格解析
解析方法package com.Auto_Test.utils; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; public class ReadCSV { public Workbook workbook; public Sheet sheet; public Cell cell; int rows; int columns; public String fileName; public String caseName; public ArrayList<String> arrkey = new ArrayList<>(); String sourceFile; /** * @param fileName excel文件名 * @param caseName sheet名 */ public ReadCSV(String fileName, String caseName) { super(); this.fileName = fileName; this.caseName = caseName; } /** * 获得excel表中的数据 */ public Object[][] getExcelData() throws BiffException, IOException { workbook = Workbook.getWorkbook(new File(getPath())); sheet = workbook.getSheet(caseName); rows = sheet.getRows(); columns = sheet.getColumns(); // 为了返回值是Object[][],定义一个多行单列的二维数组 HashMap<String, String>[][] arrmap = new HashMap[rows - 1][1]; // 对数组中所有元素hashmap进行初始化 if (rows > 1) { for (int i = 0; i < rows - 1; i++) { arrmap[i][0] = new HashMap<>(); } } else { System.out.println("excel中没有数据"); } // 获得首行的列名,作为hashmap的key值 for (int c = 0; c < columns; c++) { String cellvalue = sheet.getCell(c, 0).getContents(); arrkey.add(cellvalue); } // 遍历所有的单元格的值添加到hashmap中 for (int r = 1; r < rows; r++) { for (int c = 0; c < columns; c++) { String cellvalue = sheet.getCell(c, r).getContents(); arrmap[r - 1][0].put(arrkey.get(c), cellvalue); } } return arrmap; } /** * 获得excel文件的路径 * @return * @throws IOException */ public String getPath() throws IOException { File directory = new File("."); sourceFile = directory.getCanonicalPath() + "\\src\\" + fileName + ".xls"; return sourceFile; } }
这篇关于Java接口自动化测试框架系列(二)表格设计与数据读取的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行
- 2024-05-08阿里云域名注册流程,分享给第一次购买域名的新手站长!