python3+requests接口自动化-日志封装

1.logger.py这个文件放到common目录下,封装日志文件的读取

2.日志保存到logs文件夹

3.封装代码

 1 import logging
 2 import os
 3 import time
 4
 5
 6 # log_path是日志存放路径地址
 7 get_path = os.path.dirname(os.path.abspath(__file__))
 8 log_path = os.path.join(os.path.dirname(get_path),"log")
 9
10
11 # 如果不存在这个logs文件夹,就自动创建一个
12 if not os.path.exists(log_path):os.mkdir(log_path)
13
14 class Log():
15     def __init__(self):
16         # 文件的命名
17         self.logname = os.path.join(log_path,"%s.log"%time.strftime("%Y:%m:%d"))
18         self.logger = logging.getLogger()
19         self.logger.setLevel(logging.DEBUG)
20         # 日志输出格式
21         self.formatter = logging.Formatter(‘[%(asctime)s] - %(filename)s] - %(levelname)s: %(message)s‘)
22
23     def __console(self,level,message):
24
25     # 创建一个FileHandler,用于写到本地
26         fh = logging.FileHandler(self.logname,"a",encoding=‘utf-8‘) # 追加模式
27         fh.setLevel(logging.DEBUG)
28         fh.setFormatter(self.formatter)
29         self.logger.addHandler(fh)
30
31         # 创建一个StreamHandler,用于输出到控制台
32         ch = logging.StreamHandler()
33         ch.setLevel(logging.DEBUG)
34         ch.setFormatter(self.formatter)
35         self.logger.addHandler(ch)
36
37         if level == "info":
38             self.logger.info(message)
39         elif level == "debug":
40             self.logger.debug(message)
41         elif level == "warning":
42             self.logger.warning(message)
43         elif level == "error":
44             self.logger.error(message)
45
46         # 这两行代码是为了避免日志输出重复问题
47         self.logger.removeHandler(ch)
48         self.logger.removeHandler(fh)
49
50         # 关闭打开的文件
51         fh.close()
52
53     def debug(self,message):
54         self.__console("debug",message)
55
56     def info(self,message):
57         self.__console("info",message)
58     def warning(self,message):
59         self.__console("warning",message)
60     def error(self,message):
61         self.__console("error",message)
62
63 if __name__ == "__main__":
64     log = Log()
65     log.info("--测试开始--")
66     log.info("操作步骤1,2,3")
67     log.warning("--测试结束--")

原文地址:https://www.cnblogs.com/jayson-0425/p/9809947.html

时间: 2024-11-10 17:44:16

python3+requests接口自动化-日志封装的相关文章

python+requests接口自动化完整项目设计源码

前言 有很多小伙伴吵着要完整的项目源码,完整的项目属于公司内部的代码,这个是没法分享的,违法职业道德了,就算别人分享了,也只适用于本公司内部的业务. 所以用例的代码还是得自己去一个个写,我只能分享项目框架,只能帮你们到这了. 一.项目结构 1.新建一个工程(一定要创建工程),工程名称自己定义,如:yoyo_jiekou 2.在工程的跟目录新建一个脚本:run_main.py,用来执行全部用例 3.在工程下创建以下几个pakage包: --case:这个包放test开头的测试用例,也可以放一些封装

【python3+request】python3+requests接口自动化测试框架实例详解教程

转自:https://my.oschina.net/u/3041656/blog/820023 前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些,所以,我决定自己写python的接口自动化测试框架,由于本人也是刚学习python,

python3+request接口自动化框架

首次书写博客,记录下写的自动化接口框架,框架比较简单,哈哈哈,算是记录下历程把!~~~ 一.本次框架由python3.6 书写 1.准备代码环境,下载python3.6    下载地址:https://www.python.org/downloads 2.下载pycharm 软件. 二.开始创建python接口自动化框架: 1.这是我创建的框架中的各个文件夹,分别有config  配置文件夹.fengzhuang   将接口用get post  两种传输方式进行封装并自动来区分执行. 2.log

python3+requests:使用类封装接口测试脚本

前言:接口测试用例较多,我们不可能每个用例都写一次requests,get或者requests,post等,所以对共用方法要进行封装处理 第一次修改:将get请求和post请求单独定义出来,使用过程中根据不同类型的请求直接调用对应的方法 1 import requests 2 import json 3 4 def send_post(url,data,headers): 5 response = requests.post(url=url,data=data,headers=headers).

python+requests接口自动化入门--返回值的处理

import requests import json url = "http://xxxxxxxxxxxxxxxxxxxxxx" r = requests.get(url, params={'eid': '1'}) result = r.json() print(result) print(json.dumps(result, encoding="UTF-8", ensure_ascii=False)) print(result['status']) print(

python + requests 接口自动化教程 (案例最多-教程最完善)

作者:上海-悠悠 博客首页:https://www.cnblogs.com/yoyoketang/ selenium 教程地址:https://www.cnblogs.com/yoyoketang/tag/python%E6%8E%A5%E5%8F%A3%E8%87%AA%E5%8A%A8%E5%8C%96/ 原文地址:https://www.cnblogs.com/junshiliangmeng/p/12006051.html

python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告

前言 1.环境准备: python3.6 requests xlrd openpyxl HTMLTestRunner_api 2.目前实现的功能: 封装requests请求方法 在excel填写接口请求参数 运行完后,重新生成一个excel报告,结果写入excel 用unittest+ddt数据驱动模式执行 HTMLTestRunner生成可视化的html报告 对于没有关联的单个接口请求是可以批量执行的,需要登录的话写到setUpclass里的session里保持cookies token关联的

python+requests接口自动化测试框架实例详解教程

转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实现的接口自动化框架详细教程 前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些,所以,我决定自

Python3简易接口自动化测试框架设计与实现 实例2

目录 1.开发环境 2.用到的模块 3.框架设计 ?3.1.流程 3.2.项目结构 5.日志打印 6.接口请求类封装 7.Excel数据读取 7.1.读取配置文件 7.1.编写Excel操作类 8.用例组装 9.用例运行结果校验 10.运行用例 11 .小结 1.开发环境 操作系统:Ubuntu18 开发工具:IDEA+PyCharm插件 Python版本:3.6 2.用到的模块 requests:用于发送请求 xlrd:操作Excel,组织测试用例 smtplib,email:发送测试报告 l