JMeter 调用自定义Java程序创建Redmine问题(II)
JMeter 调用自定义Java程序创建Redmine问题(II)
前言
在JMeter 调用自定义Java程序创建Redmine问题中我们讲了如何通过JMeter创建Redmine问题,但在实际应用中,我们要将接口测试结果进行判断,如果有错误,我们才要创建缺陷任务,并指派给研发,这怎么实现呢?
JMeter获取接口响应结果
JMeter执行完接口测试,获取响应结果的实现:
- 获取单对象方式
...
//获取APP接口测试结果使用
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
//获取接口响应信息
String jsonContent = prev.getResponseDataAsString();
//转换响应信息为JSONObject
JSONObject resJson = newJSONObject(jsonContent);
//获取key为resultCode的value
String resultCode = resJson.getString("resultCode");
...
然后我们就可以根据响应信息Code(自定义,如:404、400、500、501、1314521…)
注:在实际开发中,平台要定义好这些错误编码并归档,以便后续查阅及规范;
- 获取多对象方式
//获取APP接口测试结果使用
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
//获取接口响应信息
String jsonContent = prev.getResponseDataAsString();
//转换响应信息为JSONObject
JSONObject resJson = new JSONObject(jsonContent);
//获取parentGroups中groups(响应对象很多层,????在下面)
JSONArray jsonArray = resJson.getJSONObject("parentGroups").getJSONArray("groups");
//对JSONArray的处理,就不赘述了
...
多对象的????:
{
"parentGroups": {
"code": 500,
"message": "服务器错误,请联系管理员",
"list": [
{
"listId": "32UUID",
"Bean": [
{
"id": 1,
"name": "名字A",
"des": "描述A"
},
{
"id": 2,
"name": "名字B",
"des": "描述B"
},
{
"id": 3,
"name": "名字C",
"des": "描述C"
},
]
}
]
}
}
- JMeter工程截图
结语
至此,JMeter 调用自定义Java程序创建Redmine问题就结束啦,这些只是实现devOps的一个环节,如有问题还请留言指正,谢谢!