httpclient接口测试如何对检查点做兼容
来源:互联网 发布:网络舆论引导 编辑:程序博客网 时间:2024/06/05 14:18
本人在使用httpclient做接口测试的过程中,遇到了一个比较麻烦的问题,就是检查点设置,检查点有的取的是json某个字段值和期望值对比,有的是对json里面的date数据(也是 json格式)的某些字段值和期望值比较,有的去的是返回信息是否包含某些文本,经过不断尝试,终于写了一个检查方法, 兼容了所有的检查点设置情况,其中包括包含文本可以设置多个文本还有从数据库读取检查点为null或者empty的情况。分享代码,供大家参考。
// 获取返回值是否存在在json数据中public String getDateContains(JSONObject response, String key, String value) {String value1 = value;//存放一个value,因为后面回去value进行编辑value = value.replace(",", ",");//替换掉中文逗号if (key.equals("text")) {//如果key字段名为text,表示进入文本包含验证if (value.indexOf(",") == -1) {//如果不存在逗号,则直接进入验证boolean result = response.toString().contains(value);return result ? value1 : author;} else {//如果包含逗号,先将中文逗号转化为英文都好List<String> list = new ArrayList<>();//用list存放获取到的value中的值for (int i = 0; i < 5; i++) {//for循环获取验证文本if (value.indexOf(",") == -1) {//如果已经到头,则直接赋值并添加list,跳出循环String key1 = value;list.add(key1);break;}String key1 = value.substring(0, value.indexOf(","));//截取字符串list.add(key1);//添加listvalue = deleteCharFromString(key1 + ",", value);//删除截取到的字符串}boolean result = true;for (int i = 0; i < list.size(); i++) {if (!result) {break;}result = result & response.toString().contains(list.get(i));//遍历得到最终结果}return result ? value1 : author;//返回值}} else {return getDateValue(response, key);//如果不是text,则返回getdatevalue()方法的返回值}}
// 获取返回信息里面数据的检查点对应的值public String getDateValue(JSONObject response, String key) {String jsonValue = null;jsonValue = getJsonValue(response, key);if (jsonValue == null) {try {JSONObject jsonObject = (JSONObject) response.get("data");jsonValue = (String) jsonObject.getString(key);} catch (JSONException e) {output("json数据错误!", e);}}return jsonValue;// 返回对应值}
// 获取json数据中的相应值private String getJsonValue(JSONObject response, String key) {String jsonValue = null;try {jsonValue = (String) response.getString(key);} catch (JSONException e) {output("json数据错误!", e);}return jsonValue;// 返回对应值}末了宣传一下自己的UiAutomator交流群,缘起于UiAutomator,又不止于UiAutomator。
阅读全文
0 0
- httpclient接口测试如何对检查点做兼容
- httpClient post对长参数接口的测试
- testNG+httpclient接口测试
- 接口测试 - httpClient
- 接口测试之HttpClient
- HttpClient天气接口测试
- HttpClient之接口测试
- HttpClient测试接口Test
- 接口测试简介及如何做接口测试
- HttpClient对webserive测试
- 如何对javascript做测试呢?
- 如何对Web服务器做压力测试
- 如何对Web服务器做压力测试
- 使用HttpClient实现接口测试
- 使用httpClient进行接口测试
- 接口测试及httpclient深入
- 接口测试及httpclient深入
- HttpClient接口测试问题汇总
- 笔试算法须知---用JS实现队列处理问题
- Qt 取消window标题栏事件失效
- 将DJANGO 中MODELS数据转化为JSON数据(name,verbose_name,value)方法
- Java多线程系列--“JUC锁”03之 公平锁(一)
- 储存用了反式脂肪酸
- httpclient接口测试如何对检查点做兼容
- Unity学习笔记——鼠标移动到物品上显示物品名字,点击后显示物品信息
- 数据结构与算法JavaScript描述 | 数组
- iOS11项目适配 UIScorllView下移和导航栏返回按钮偏移
- 隐藏滚动条,移动端
- 虚拟机centos配置nat的固定IP
- ajax 跨域 session 及 spring boot分布式session
- PAT-B] 1017. A除以B [模拟]
- MongoDB单个表数据导出导入