1、多个接口之间数据的共享传递------全局变量
2、多个接口之间的顺序------接口文件用例的名字
3、接口请求的相同点:
1、发送请求(大部分会要权限信息)
接口的参数数量不一定一样,所以考虑使用*args和**kwargs(因为有关键字跟请求的参数比较像,所以选这个)
因为会有大部分一样的公共参数,所以考虑单独拿出来,添加到接口中(不覆盖仅添加,所以用update),但是可能当前接口什么参数都没的后不能用update,所以要字典取值没得时候用默认值(空字典{}):字典.get("名字",默认值)
接口:
行:请求方法method(GET:获取资源、POST:创建资源、DELETE:删除资源、PUT:修改资源、OPTIONS:查询接口信息)、路径url(协议、主机、路径)、版本号
头params:键值对,ASCII码,数量不限,长度不限,名字不限
体:完全没有要求(空、表单params:键值对、JSON :JSON字符串、文件上传file二进制:图片、视频、音频)
实际文件上传的file也是传的由名字和二进制值组成的字典,考虑简化可以传文件的地址字符串,所以需要判断是字典还是字符串,如果是字符串那就是需要打开文件,转成二进制,之后组合成字典
2、提取数据
3、断言数据
4、通用工具
数据驱动的数据:
序列化&反序列化
json
yaml
其他杂七杂八:
接口还可能会加密传送,考虑单独封装加密解密等其他需要做的小事情,考虑单独一个文件封装杂七杂八的小方法来处理
5、每个地方补充日志
logger = logging.getLogger('文件名')
logger.debug('这是一个 DEBUG 级别的消息')
logger.info('这是一个 INFO 级别的消息')
logger.warning('这是一个 WARNING 级别的消息')
logger.error('这是一个 ERROR 级别的消息')
logger.critical('这是一个 CRITICAL 级别的消息')