巡检变量使用的最佳实践
-
在功能巡检中可以定义变量,刚开始接触系统时可能对这些变量的用途和使用场景有点摸不着头脑,这篇文章主要分享下巡检变量的使用场景和最佳实践,希望通过这篇文章能够对巡检变量加深印象并能够在自己的场景中灵活运用。
为什么要引入巡检变量?
如果你已经试用过功能巡检并在功能巡检中创建过巡检步骤,你会发现它可以帮助你完成你想要的基本功能校验。不过,如果你的巡检步骤间关系依赖比较紧密,例如当前步骤中的API需要一个request key,而这个request key是上一个步骤中API的输出,那么,就需要一个机制能够完成步骤间的沟通,这也是引入巡检变量的初衷。
- 全局的巡检变量可以被所有巡检步骤使用,实现了一处定义处处共享的目的
- 前面巡检步骤中定义的巡检变量可以被后续的巡检步骤使用,实现了巡检步骤间关键信息的传递
巡检变量和巡检步骤的关系?
下图展示了巡检变量和功能巡检以及巡检步骤间的关系。
巡检变量使用场景举例
这里以Sikka系统API功能检查为例说明巡检变量的一个使用场景,希望通过这个例子能够加深对巡检变量的理解并能方便的运用到你的系统中。
场景描述:
Sikka系统(https://api.sikkasoft.com)的API有更新并完成了新版本的发布,希望通过功能巡检完成对新版本获取guarantor数据API(https://api.sikkasoft.com/v2/guarantors_v2?request_key=xxxxxx)的快速验证,保证基础功能的正确性,其中request_key的值可通过其他API获取且是动态的。
- 获取guarantor的API是https://api.sikkasoft.com/v2/guarantors?request_key={{request_key}}
- 获取上述API中request_key的API是https://api.sikkasoft.com/auth/v2/request_keys?app_id=c8637e5b2896a893ed455ef6450b6e9f&app_key=0379bf44165d9cd14a418f116a4e364f&office_id=A9924&secret_key={{secrect_key}}
- 获取上述API中的secrect_key的API是https://api.sikkasoft.com/auth/v2/authorized_practices?app_id=c8637e5b2896a893ed455ef6450b6e9f&app_key=0379bf44165d9cd14a418f116a4e364f
提示:上述API中的app_id和app_key是Sikka官网提供的供测试使用的id和key。
配置步骤:
步骤1 - 创建新的功能巡检并创建第一个巡检步骤获取secrect_key
在这个步骤中创建一个巡检变量,名称为secrect_key,它的值来自对输出结果的JSON数据的过滤,下面是这个API的输出结果的一个例子。
步骤2 - 创建第二个巡检步骤获取request_key
在这个步骤中会使用到巡检步骤1中的secrect_key,同时在这个步骤中创建一个巡检变量,名称为request_key,它的值来自对输出结果的JSON数据的过滤,下面是这个API的输出结果的一个例子。
步骤3 - 创建第三个巡检步骤获取gurantor并校验API返回结果是否正确
在这个步骤中会使用到巡检步骤1中的request_key,通过巡检变量完成了各个API之间的沟通,达到了对API升级的功能校验。
总结
通过上面的实例对巡检变量的引入逻辑进行了说明,对巡检变量的使用场景进行了举例分享,也许在深入理解的基础上你能够发现更多有意思的使用场景,欢迎在我们的社区https://community.zervice.cn/ 进行讨论分享。
-
-
变量实现上下文传递,比较实用的功能
-
还可以支持JSONPath
后端验证比较方便啊