概要
之前做过一版自动化测试框架v1.0,1.0版本主要功能实现的是自动化读取excel中的url,参数,然后使用python中的get/post的方法自动请求接口,将结果再写入excel中。
但是后来发现一个问题:对于接口参数的类型判断这类用例数很多,但是又很基础,一般不牵涉到业务场景。
因此有个想法:是否能输入接口的参数后,自动生成关于类型判断和缺少必填项/非必填项的用例,然后再自动请求,写入结果。
所以这段时间消失就是去完善了之前的自动化测试框架,升级到了v2.0~
框架
v2.0还是基于python的requests库的,只是多了一个简单的前端页面和随机生成类型参数、缺少必填项/非必填项参数的业务逻辑。但是因为前后端需要交互,所以我这里用的是python自带的CGI库来实现。
实现思路
接下来说一下我的实现思路
-
首先确定传参的数据结构
<
因为接口参数类型除了基本的数据类型外还有复杂一点的,类似object和数组。所以最初想到的是用dict来承载,但是在实现过程中发现,dict不可哈希,因此他的key不可以是dict类型,这样的话就没办法用嵌套dict实现object类型的参数了,最后确定使用tuple为参数的数据结构。
params:
({‘name’:‘a’,‘type’:‘int’},{‘name’:‘b’,‘type’:‘string’},{‘name’:’’,‘type’:‘object’,‘object’😦{‘name’:’’,‘type’:’’,‘isRequired’:’’},{‘name’:’’,‘type’:’’,‘isRequired’:’’})})