问题背景:
目前项目完全采用api object的方式,但是每个接口对象都是采用硬编码的方式,类似这样:
class MemberApi(BaseApi):
@api_call
def login_api(self, user=BaseApi().account['user'], pwd=BaseApi().account['pwd']):
"""
登录接口
:return:
"""
api = self.conf_data['member_api']['login']
data = {
'url': self.host + api,
'method': 'post',
'headers': self.headers,
'json': {
'mobile_phone': user,
'pwd': pwd
}
}
response = self.send_http(data)
return response
换到其他业务线,会比较麻烦,又需要去编写该业务线的api函数对象,还是希望这个框架能更通用一些,能快速搭建脚手架,并且后期会集成到测试平台上。
现在想用一种方式,能让其自动生成api函数对象,而不用人工去编写。
目前想到的思路是,每个api函数对象,其实格式都是固定的,变量只是参数,通过一套标准的yaml模板传入参数,去动态生成api对象。
但是,关键是如何动态生成api对象呢?有什么思路呢?
求各位大佬支支招~