前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >httpclient接口测试完整用例

httpclient接口测试完整用例

作者头像
企鹅号小编
发布2018-02-08 17:23:29
9590
发布2018-02-08 17:23:29
举报
文章被收录于专栏:企鹅号快讯企鹅号快讯

本人是在使用httpclient做接口测试的过程中,总结了一些方法,写了一个基本的测试框架。用例的管理和测试结果的保存都放在数据库中,今天算是基本完成和健全了用例的模版。分享出来供大家参考。

publicvoidcase_shequ_topic_cattlist() {

String apiName ="shequ_topic_cattlist";

mark = getMark();// 获取时间戳作为测试标记

List date = LocalMySql.getInstance().getCaseFromMySql(apiName);// 数据库读取用例

for(inti =; i < date.size(); i++) {// 遍历执行用例

intresult =;

String expect_value1 ="", actual_value1 ="", expect_value2 ="", actual_value2 ="", params ="",

actual_key1 ="", actual_key2 ="", actual_key3 ="", expect_value3 ="", actual_value3 ="";

Map use = date.get(i);// 获取单个用例

String case_id = use.get("case_id");

/*

* 获取检查点的key和expect_value 如果有1个检查点就写一个,兼容多个 getresult方法兼容验证点不存在情况

*/

expect_value1 = use.get("verify_value1");// 获取验证点期望值

expect_value2 = use.get("verify_value2");// 获取验证点期望值

expect_value3 = use.get("verify_value3");// 获取验证点期望值

actual_key1 = use.get("verify_key1");//获取检查点key

actual_key2 = use.get("verify_key2");//获取检查点key

actual_key3 = use.get("verify_key3");//获取检查点key

params = use.toString();// 记录传入参数

JSONObject response = shequ_topic_cattlist(use);// 获取相应结果

actual_value1 = getDateValue(response, actual_key1);//获取验证点实际值

actual_value2 = getDateValue(response, actual_key2);//获取验证点实际值

actual_value3 = getDateContains(response, actual_key3, expect_value3);//获取验证点实际值,此为包含验证

result = getResult(expect_value1, actual_value1, expect_value2, actual_value2) ?1:2;// 获取测试结果,1为通过,2为失败

LocalMySql.getInstance().saveApiTestResult(case_id, mark, result, apiName, expect_value1, actual_value1,

expect_value2, actual_value2, expect_value3, actual_value3, params);// 写入数据库

}

LocalMySql.getInstance().addApiTestResult(apiName, mark, test_mark);//统计本次运行所有用例结果

}

获取响应的方法封装:

publicJSONObject shequ_topic_cattlist(Map apiCase) {

String uri = host +"/shequ/topic/cattlist";

deleteMap(apiCase);

JSONObject jsonObject =newJSONObject(apiCase);

HttpGet httpGet = getHttpGet(uri, jsonObject);

JSONObject response = getHttpResponseEntityByJson(httpClient, httpGet);

returnresponse;

}

模版做好了,其他的用例直接可以复用,就是改一下接口名和方法名的问题,看起来非常整齐。

-----------------------------END---------------------------------

软件测试行业的现状:无论公司用不用自动化和性能,面试都会要求你会,所以不努力你还能走多远?

龙腾岁末给力课程揭榜了~

1、零基础学Python

周期:21课时+

上榜理由:便宜便宜还是便宜

收费详情:仅需200元押金,报自动化班的学员免费赠送

2、Python自动化测试班

周期:84课时+

上榜理由:分层自动化内容实用,接地气,不走理论派,

收费详情:网络班4000,实体班5000,推荐好友还可以更便宜

附赠大礼包:预定Python自动化班,赠送21课时Python基础课程

3、Python测试开发班

周期:112课时+

上榜理由:4个大项目实战,公司要什么我们讲什么,折扣力度大

收费详情:原价8500/9750的课程,折后仅需6800/7800

附赠大礼包:预定Python测试开发班,赠送21课时Python基础+21课时环境搭建

本文来自企鹅号 - 龙腾测试媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文来自企鹅号 - 龙腾测试媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档