在“确保放心”中,安排有效载荷的顺序

问题描述

我已经为Rest Assured API编写了代码以实现自动化,我已经使用JSONObject创建了有效负载,但是有效负载没有排序,因此我遇到了错误。以下是我的有效载荷的样子

{
    "Student": "Primary","class": "First","segments": [{
            "Subject": "Science","Marks": "50"

        },{

            "Subject": "History","Marks": "50"
        }
    ],"Fee": "Paid","Roll no": "20"
}

但是对象映射器生成的有效载荷如下

 {
    "Student": "Primary","Roll no": "20","Marks": "50"
        }
    ]
}

下面是用Java编写的代码

JSONObject requestParam = new JSONObject();
JSONArray requestParamArray = new JSONArray();

requestParam.put("Student",strStud);
requestParam.put("class",strClass);

Map searchReqMap1 = new LinkedHashMap(3);
searchReqMap1.put("Subject",strsubject);
searchReqMap1.put("mark",strmark);

Map searchReqMap2 = new LinkedHashMap(3);
searchReqMap2.put("Subject",strsubject);
searchReqMap2.put("mark",strmark);

requestParamArray.add(searchReqMap1);
requestParamArray.add(searchReqMap2);

requestParam.put("segments",requestParamArray);
requestParam.put("fee",strfee);
requestParam.put("rollno",strrollno);
return requestParam.toJSONString();

`从excel读取输入数据

解决方法

您能否提供一些错误日志,以告诉我们您为什么认为“但由于我遇到了错误,未对有效负载进行排序。”

据我所知,JSON对象成员的顺序无关紧要。看到这个:Does the sequence of the values matter in a JSON object?

您的代码看起来非常好。我只认为这句话new LinkedHashMap(3)应该是new LinkedHashMap(2)

所以请显示更多信息,我将在以后编辑此答案。