python_request 接口测试线性框架
Posted 安琪儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python_request 接口测试线性框架相关的知识,希望对你有一定的参考价值。
一、大框架
如下为一个简单的线性框架,同时编写common_api 模块,把一个个接口进行封装,案例编写时候只需要直接调用输入参数即可。
二、 test_cases 模块具体写法
2.1 common_api 写法:
2.2 要测试的接口中的写法:
优化:
增加日志功能:
common下增加日志模块log_utils:
import os
import logging
import time
from common.config_utils import config
current_path = os.path.dirname(__file__)
log_output_path = os.path.join( current_path,\'..\', config.LOG_PATH )
class LogUtils():
def __init__(self,log_path=log_output_path):
self.log_name = os.path.join( log_output_path ,\'ApiTest_%s.log\'%time.strftime(\'%Y_%m_%d\') )
self.logger = logging.getLogger("ApiTestLog")
self.logger.setLevel( config.LOG_LEVEL )
console_handler = logging.StreamHandler() # 控制台输出
file_handler = logging.FileHandler(self.log_name,\'a\',encoding=\'utf-8\') # 文件输出
formatter = logging.Formatter("%(asctime)s %(name)s %(levelname)s %(message)s")
console_handler.setFormatter(formatter)
file_handler.setFormatter(formatter)
self.logger.addHandler( console_handler )
self.logger.addHandler( file_handler )
console_handler.close() # 防止打印日志重复
file_handler.close() # 防止打印日志重复
def get_logger(self):
return self.logger
logger = LogUtils().get_logger() # 防止打印日志重复
if __name__ == \'__main__\':
logger.info(\'hello\')
以上是关于python_request 接口测试线性框架的主要内容,如果未能解决你的问题,请参考以下文章
基于appium实现的线性代码引用unittest单元测试框架
pytest接口自动化测试框架 | 用python代码测试接口