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问题(II)

结语

至此,JMeter 调用自定义Java程序创建Redmine问题就结束啦,这些只是实现devOps的一个环节,如有问题还请留言指正,谢谢!