groovy - 对 JSON 响应中的数据进行排序以进行比较
问题描述
我正在尝试比较 2 个完整的 JSON 响应——通过/失败状态的预期和实际。我在 Excel 表中的预期响应与我在将 API 请求作为实际响应运行后得到的顺序不同,这会导致一对一比较失败。为了解决这个问题,我需要在比较之前对 Expected Response 中的数据进行排序,使其与 Actual Response 格式匹配。以下是供参考的预期和实际响应。有人能帮忙吗?
预期反应 -
“驱动程序”:[ {“ContactId”:501019,“LicenseNumber”:“”,“LicenseState”:“VA”, “DriverNumber”:3, “DriverStatus”:“Active”,“DriverTerminationDate”:null,“DriverUsed” :假,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”,“PolicyDateTimeMax”:“2016-07-26T21:34:10”},{“ContactId”:501018,“LicenseNumber”:“”, “LicenseState”:“VA”, “DriverNumber”:2, “DriverStatus”:“Active”,“DriverTerminationDate”:null,“DriverUsed”:true,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”, “PolicyDateTimeMax”:“2016-07-26T21: 34:10" }, { "ContactId": 501017, "LicenseNumber": " ", "LicenseState": "VA", "DriverNumber": 1, “DriverStatus”:“Active”,“DriverTerminationDate”:null,“DriverUsed”:true,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”,“PolicyDateTimeMax”:“2016-07-26T21:34:10 " } ]
实际反应 -
“驱动程序”:[ {“ContactId”:501017,“LicenseNumber”:“”,“LicenseState”:“VA”, “DriverNumber”:1, “DriverStatus”:“Active”,“DriverTerminationDate”:null,“DriverUsed” :真,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”,“PolicyDateTimeMax”:“2016-07-26T21:34:10”},{“ContactId”:501018,“LicenseNumber”:“”, “LicenseState”:“VA”, “DriverNumber”:2, “DriverStatus”:“Active”,“DriverTerminationDate”:null,“DriverUsed”:true,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”, “PolicyDateTimeMax”:“2016-07-26T21:34: 10" }, { "ContactId": 501019, "LicenseNumber": " ", "LicenseState": "VA", "DriverNumber": 3, “DriverStatus”:“活动”,“DriverTerminationDate”:null,“DriverUsed”:false,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”,“PolicyDateTimeMax”:“2016-07-26T21:34:10 " }, { "ContactId": 501021, "LicenseNumber": " ", "LicenseState": "VA", "DriverNumber": 4, "DriverStatus": "Active", "DriverTerminationDate": null, "DriverUsed": false ,“PolicyDateTimeDriverAdd”:“2016-07-26T11:45:05”,“PolicyDateTimeMax”:“2016-07-26T21:34:10”}]
我在预期响应中突出显示了 DriverNumber 字段,我想在比较之前按升序对数据进行排序 1,2,3
解决方案
推荐阅读
- ruby - Ruby - Selenium,禁用“重新加载页面”
- javascript - 单击按钮时更改行的背景颜色的角度
- python-3.x - 在间隔类型的列上过滤数据帧[float64]
- java - 尝试从我的自定义插件调用时无法调用 Project.afterEvaluate(Action)
- google-apps-script - 在应用脚本中使用函数 unzipGmail1(){ 时如何选择要使用的文件
- dolphindb - 更新表失败,交易值更新为列名
- c - 访问程序参数时出现分段错误(核心转储)
- kotlin - 即使没有绑定设备,获得“由于 pin 或密码不正确而无法与 [device_name] 配对”警报的可能性有多大?
- python - 在 python 中使用网络抓取获取详细信息时出错
- c++ - OpenCV C++ RTSP Stream VideoCapture 错误 - “操作正在进行中”