python3+request接口自动化框架

首次书写博客,记录下写的自动化接口框架,框架比较简单,哈哈哈,算是记录下历程把!~~~

一、本次框架由python3.6 书写

  1、准备代码环境,下载python3.6    下载地址:https://www.python.org/downloads

  2、下载pycharm 软件。

二、开始创建python接口自动化框架:

  1、这是我创建的框架中的各个文件夹,分别有config  配置文件夹、fengzhuang   将接口用get post  两种传输方式进行封装并自动来区分执行。

  2、logfile 用来存放测试用例执行后 ,log日志的保存。

  3、public_common  用来存放一些公共的方法,比如断言、日志、获取excel表格中的用例。

  4、result  用来存放运行测试用例后,生成的html报告。

  5、test_case 用来存放测试用例代码。

  6、test_case_data用来存放测试的excel测试用例。

  7、最重要的脚本运行的入口。

三、文件夹代码开始填充:

  1、config文件夹中创建Config_file.py 文件。应为我Config_file文件中只书写了一个失败重试的次数限制,就不截图显示了,哈哈  自己写下就好

  2、logs文件夹中创建logtest文件夹(logtest的意思是曾经写了一个log文件  感觉不太好,又从新写了一个以test命名来进行实验的一直也就没改,哈哈)

    2.1、先创建一个log代码,来进行log的获取与存储。当没有log文件储存的文件夹logfile是会自动创建一个

   3、log已经创建成功后,改开始进行接口GET POST  传输带的参数进行一个代码书写。

    3.1:get与post 分别创建了两个函数因为post与get的代码差不多  就不对post进行截图了,此代码是对接口进行请求并将返回的json数据进行转换并对代码进行容错(容错位置可能有问题,如果没成功,可以下方评论联系我!)

  4、请求参数代码创建完成后,对数据可以进行断言来判断返回的数据是否准确喽:

    4.1、我在上方先导入了一个log文件,一个图没截下来,再次说明下哈,

因为我写的是PHP的接口返回,我的接口返回的数据主要判断下接口里data list  中是否有数据  ,现在判断的比较简单,断言的name主要是用在case运行时带一个用例名称好进行纪录。

  5、现在数据传参、断言下面 对case中返回的接口传输方式get、post  进行一个封装,使其自动进行判断 啦啦啦 !

    5.1、上代码

两个图截的有点low了 ,再次说一下哈,getJson这个函数是一个,只是将返回的进行一个转换后在返回给调用的,也可以自己在进行优化的,这段代码主要时对excel中的用例里面,在excel中单独放了一个字段  fangshi   对这字段来进行一个检查,如果时post则会进行判断自动调用post方法  ge‘t相同方式。

  6、好了到这里一些,来进行一项重要的,读取excel中用例。

    6.1、上代码

先导入xlrd 模块,先创建一个空list,因为我将case的数据都写在了sheet1页面中了,所以直接就写死了,这里需要的可以自己写一下,这段代码里进行按照行进行了循环查找并将每一行传唤成一个dict形式,并添加带list中最后返回list。

  7、获取excel文件的方式也写完了,开始写case的框架来进行运行了

    7.1、上代码

这段代码中有一个注释掉的,时进行测试的修改错误的,可以忽略掉。这里主要我将excel文件夹的路径直接写到了cese中,因为在excel中导出的数据时list形式,我将其进行一个循环来拿出数据进行,毕竟excel中会有很多的case来进行测试。最后对代码进行断言,在断言代码中的name字段在这里用到,用来获取excel中case中的名称,在生成log时会有一个标识,好进行跟踪。当然在这里我进行了错误错误代码,运行失败后,限制重试的次数,用到的就是Config文件中限制的次数。好了到这里接口自动化测试框架已经完成了很大的一部分了,下面就开始出现运行入口。(我这里用的UNITEST 框架,因为HTML报告没有自己写,用来一个省事的哈哈。以后会修改的。)

  8、框架运行的入口:

    8.1、上代码:

这里为框架运行的入口代码,里面有一个发邮件的功能,只是我还没有写成功,能发邮件 但是附件没带成功,sendmail文件我就没在这次书写上 ,后面的文章中,我会加上的。

四、以上为我写的接口自动化框架的基本代码,书写的比较简陋,可能规范也欠缺,哈哈  不过纪录下历程和新手学习下还算过的去

五、html测试报告样式

  5.1样式比较简单,哈哈  后续会优化的。

六、欢迎各位进行查看并指出错误。哈哈   代码借鉴了  雷子的博客。

原文地址:https://www.cnblogs.com/Jaredhan/p/10967058.html

时间: 2024-08-04 08:48:34

python3+request接口自动化框架的相关文章

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

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

接口自动化框架好文

接口自动化框架好文 2017-04-13 API 自动化测试框架分享 接口测试的一些感悟 HTTP API自动化测试从手工到平台的演变

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

python接口自动化框架

基于 python 的接口测试框架 接口测试 · jphtmt · 于 5 月前发布 · 最后由 jphtmt 于 4 月前回复 · 3553 次阅读 项目背景 公司内部的软件采用B/S架构,管理实验室数据,实现数据的存储和分析统计.大部分是数据的增删改查,由于还在开发阶段,所以UI界面的变化非常快,之前尝试过用python+selenium进行UI自动化测试,后来发现今天刚写好的脚本第二天前端就改了页面,又得重新去定位元素什么的,消耗大量的精力与时间维护自动化脚本.针对此种情况,对接口测试较为

python写接口自动化框架

代码如下: 1 #!/usr/bin/env python 2 # -*- coding: utf_8 -*- 3 # 获取测试用例文件excel 4 5 import xlrd 6 import json 7 8 9 class CreateExcel: 10 def __init__(self): 11 pass 12 13 @classmethod 14 def open_excel(cls): 15 path = "testcase.xls" 16 workbook = xlr

HttpRunner接口自动化框架的使用

简介: HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求. HttpRunner是一个基于Python开发的测试框架,可以运行在Mac.Linux.Windows系统平台上, [第一步]:安装 Python 版本:HttpRunner 支持 Python 3.4 及以上的所有版本,并使用 Travis-CI 进行了持续集成测试,测试覆盖的版本包括 2.7/3.4/3.5

接口自动化框架

接口测试客户端:http://www.cnblogs.com/beetle-shu/p/4199755.html 淘宝top接口:AllPairs : http://www.cnblogs.com/sea520/p/4642226.html Ajax接口通用示例: http://www.cnblogs.com/fengmazi/archive/2012/08/07/2626371.html Jenkins+ANT+Jmeter平台: http://www.cnblogs.com/puresoul

python学习笔记(接口自动化框架)

之前是利用python自带的unittest测试框架 这次自己设计一个 之后再一点点往里面加功能 (ps:当然这个框架真的是很简单..很简单...很简单...) excel文件格式: 1 #!/usr/bin/env python 2 # -*- coding: utf_8 -*- 3 4 import xlrd 5 import json 6 7 8 class CreateExcel: 9 def __init__(self): 10 pass 11 12 @classmethod 13 d

python接口自动化框架_初级

1.前提: python基础(能看懂代码就行,学到面向对象) 找一个应用场景(比如在聚合数据中找一个测试接口:https://www.juhe.cn/) Pycharm开发环境(IDE) 2.架子搭建: 总说框架框架不够接地气,那就简单的理解为目录,如下图是我的目录: 这是一般通用性工程目录结构, config目录管理所有的配置文件,里面可能有多个配置文件,类型可能是xml.ini.jsp等....... help目录中一般我会放一些帮助理解的东西 public目录顾名思义,里面放一些公共类,比