jmeter实战遇到的问题-json比对

前言:以往在json串比对的时候,我们都是一对一的忽略顺序比对方式,本次遇到了一个奇怪比对方式(反正我是之前没想到的),看来又得撸码打包了

​- 别总以为测试人员就不需要撸码,没听说一句老话么,不会前端的测试不是好的架构师(搞笑的)。好了,bb这么多,就是希望没事提高一下自身水平,还是来看看什么情况。先给大家简单讲一讲之前我们在做接口自动化测试的时候,我们是进行json串的比对,像这样:

//[OLD]
//用例预期结果:
[{
   "channel":"AA","value":12},{
   "channel":"BB","value":20}]
//接口返回的结果:
[{
   "channel":"BB","value":20},{
   "channel":"AA","value":12}]

这样的比对很简单,只需要以数组的形式比对就可以了(或者其他方法),以下是我从CSDN里面参考的代码(需要自行导如Gson包)

	/**
	 * 比较两个json字符串是否等价
	 * (本次用的是gson2.8.5的包,自行下载)
	 */
	public boolean same(String a, String b) {
   
		if (a == null) {
   
			return b == null;
		}
		if (a.equals(b)) {
   
			return true;
		}
		JsonElement aElement = parser.parse(a);
		JsonElement bElement = parser.parse(b);
		if (gson.toJson(aElement).equals(gson.toJson(bElement))) {
   
			return true;
		}
		return same(aElement, bElement);
	}

	private boolean same(JsonElement a, JsonElement b) {
   
		if (a.isJsonObject() && b
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值