最近在测第三方接口返回数据入库是否正确的需求。这个第三方接口返回的是一个json串,格式化后有近2000行,且json串的层级关系达到7,8层,非常复杂。
测试的基本流程是这样的:
1,调用开发接口,会解析返回的Json,然后将数据insert到8张表中�
2,测试需要是要对这8张表的字段值进行check,看字段的值是否正确
一般情况下我们校验结果都采用assert,由于assert的特性,只要不匹配就中断程序。在这种情况下对每个字段校验采用assert会极大影响测试效率,增大测试脚本的调试成本和测试时间成本,不可取。为了避免上面的情况,解决的办法有两种:
1,封装assert方法,即使不匹配也能继续执行下去
2,每个字段的校验不采用assert,而是将不匹配的结果放入StringBuild中输出,只在最后的结果检验中用assert
比如:new StringBuild("xxxx 数据校验").append("字段1...").append("字段2...")......
我们的assert只需要看最后的输出内容是否是:"xxxx 数据校验" 就行,如果不是代表有字段值不匹配,我们就具体分析输出的结果,还可以一次分析多个字段值不匹配的情况,提高测试效率。