前言
在使用httprunner的测试过程中,进行case的关联往往避不开接口参数的关联,比如需要通过创建/搜索接口来获取唯一标识id,然后将id传递到下一个接口的编辑/删除接口,这才能将自动化形成闭环,但是httprunner的参数变量可以在api设置,可以在testcase设置,也可以在testsuite设置。这样也就牵扯到了参数变量的作用域。
httprunner的作用域关系
简单来说,testsuite>testcase>api,这个关系式是什么意思呢? 我认为可以理解为,api的变量是默认值,当testcase没有重新给api的变量赋值时,那么调用该api时,会默认使用api的变量;这是testcase和api的参数作用域的区别,但是testcase中也有两处可以设置,他们的关系是 config>teststeps,这个关系式的表示的就是,当config没有给变量重新赋值时,会用到teststeps的变量;
同理,testsuite文件中也有两处可以设置变量,他们的关系也是config>testcases,
整体下来,httprunner的variables五层作用域关系为suite文件的config中的variables>suite文件testcases中的variables>case文件中的config中的variables>case文件中的teststeps中的variables>api文件中config的variables;注意,api文件只有config中才有variables
画一个作用域图作为结尾吧
尾言
关于httprunner的作用就说道这里,如果有说的不对的,请各位大佬指正~下篇博客继续记录httprunner的参数化—env文件的使用