(五)Java版接口自动化-用json文件的方式做数据驱动
一、新增一个读取json格式文件的工具类,代码如下:
package com.automation.interfacetest.util; import java.io.*; /** * @title: * @author: 2021/11/1116:17 * @date: 2021/11/1116:17 */ public class JsonUtils { /** * 读取json文件,返回json串 * @param fileName * @return */ public static String readJsonFile(String fileName) { String jsonStr = ""; try { File jsonFile = new File(fileName); FileReader fileReader = new FileReader(jsonFile); Reader reader = new InputStreamReader(new FileInputStream(jsonFile),"utf-8"); int ch = 0; StringBuffer sb = new StringBuffer(); while ((ch = reader.read()) != -1) { sb.append((char) ch); } fileReader.close(); reader.close(); jsonStr = sb.toString(); return jsonStr; } catch (IOException e) { e.printStackTrace(); return null; } } }
二、在用例中调用JsonUtils工具类,获取到一个string的参数,再将string转换为jsonobject
@Test(groups = "测试组", description = "读取json文件做请求参数") public void test001() throws Exception{ String str = JsonUtils.readJsonFile("src/test/resources/testdata/testParams.json"); JSONObject object = JSONObject.parseObject(str); String result = TestService.imageCloudPage(object, token); System.out.println("打印返回结果:" + result); }
这里用到了JSONObject,所以需要在pom.xml里引入json的包
com.alibaba fastjson 1.2.32