各位大佬,想问一下接口自动化中如何实现动态传参呢,我现在的方式是数据保存在 yml 文件,测试用例直接读取这个文件,这样编写感觉后期需要维护很多 yaml 文件,看网上有人说用反射,但是没有看到具体实现不知道如何操作。下面是我的代码
把接口骨架 和 数据分开管理,然后分析下数据可以从哪些渠道拿来,比如线上日志?比如数据库?比如写死的 yml 文件?比如通过其他接口获取,通过某算法临时生成?去哪爬一下?每个特殊关键字段都想一想,这个事就清晰了
能否先描述下你的 “动态传参” 具体是想达到什么效果?担心我理解的和你理解的不一样,这样回答就没意义了。
个人理解 “动态” 意味着可以 “运行时调整” ,日常接触最常见的动态就是编程语言里的 变量读取、变量写入 了,也可以理解为楼上说的 接口骨架和数据分开管理 。所以个人理解,有提供类似的机制都可以实现 “动态”。
但你哪些位置会需要进行变量读取(只有 yml?只有 java 代码?两者都有?)、需要进行变量写入(框架启动时命令行传入?上一个接口返回值?外部数据源(如环境变量、数据库、外部其他接口、读取外部文件等)?)、不同场景要如何读取、如何写入、除了全局变量是否还需要能缩小作用域的局部变量,这些是需要根据你的具体想达到效果来设计的。
有动态参数,没动态传参
https://testerhome.com/?ivk_sa=1024320u
yaml 可以用 jinja2 继承,可以省不少 yaml 文件