⑴ python自动化测试怎么将多个依赖数据
接口测试中,有些场景接口间存在着数据依赖的问题,比如说提交订单前需要用户先登录等等,下面就用两个小案例说说数据依赖的问题。
两个接口,一个接口(project_add)用来创建测试项目,一个接口(env_add)用来创建测试环境,env_add接口需依赖project_add接口返回的project_id字段数据。
一、Postman解决数据依赖的问题
这样数据依赖的问题就搞定了
二、用python代码实现接口数据依赖
用代码解决数据依赖的方法有多种,下面用反射来解决数据依赖的问题。
反射它可以把字符串映射到实例的变量或者实例的方法然后,可以去执行调用、修改等操作。
它有四个重要的方法:
getattr 获取指定字符串名称的对象属性
setattr 为对象设置一个对象
hasattr 判断对象是否有对应的对象(字符串)
delattr 删除指定属性
classRelyData(object):
project_id=Noneprint(RelyData.project_id)
setattr(RelyData,"project_id", "111")print(getattr(RelyData, "project_id"))
定义了一个RelyData()类,里面设置了一个类属性,project_id=None,然后再用setattr函数为对象RelyData里面project_id属性设置了新值,最后再用getattr函数取出里面的值,这是个属性值替换的过程。
classTest(unittest.TestCase):defsetUp(self):pass
deftest_1(self):"""添加项目接口"""url=
"http://127.0.0.1:8000/base/project_add/"headers= {'Content-Type':
'application/x-www-form-urlencoded'}
datas= {"prj_name": " search", "description": "网络搜索"}
response= requests.post(url, data=datas, headers=headers)print("response:", response.json())