前言 1.环境准备: python3.6 requests xlrd openpyxl HTMLTestRunner_api 2.目前实现的功能: 封装requests请求方法 在excel填写接口请求参数 运行完后,重新生成一个excel报告,结果写入excel 用unittest+ddt数据驱动模式执行 HTMLTestRunner生成可视化的html报告 对于没有关联的单个接口请求是可以批量执行的,需要登录的话写到setUpclass里的session里保持cookies token关联的…
可以参考 python+requests接口自动化完整项目设计源码(一)https://www.cnblogs.com/111testing/p/9612671.html 原文地址https://www.cnblogs.com/yoyoketang/p/8628812.html 原文地址https://www.cnblogs.com/yoyoketang/tag/python接口自动化/ 原文地址https://www.cnblogs.com/yoyoketang/ 原文地址https://ww…
1.环境准备: python3.6 requests xlrd openpyxl HTMLTestRunner_api 2.目前实现的功能: 封装requests请求方法 在excel填写接口请求参数 运行完后,重新生成一个excel报告,结果写入excel 用unittest+ddt数据驱动模式执行 HTMLTestRunner生成可视化的html报告 对于没有关联的单个接口请求是可以批量执行的,需要登录的话写到setUpclass里的session里保持cookies token关联的不能实…
1.Business:公共业务模块,如登录模块,可以把登录模块进行封装供调用 ------login_business.py from Page_Object.Common_Page.login_page import Login_Page from HTMLReport import logger import time def login(driver, username, password): """ 登录业务 :param driver:浏览器驱动 :param us…
Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系.其中接口协议分为HTTP,RPC,Webservice,Dubbo,RESTful等类型. 接口测试流程 1.需求评审,熟悉业务和需求 2.开发提供接口文档 3.编写接口测试用例 4.用例评审 5.提测后开始测试 6.提交测试报告 两种常见的 HTTP 请求方法:GET 和 POST 二.项目说明…
本文介绍 Python Requests 库的开发者接口,主要内容包括: 目录 一.主要接口 1. requests.request() 2. requests.head().get().post().put().patch().delete() 二.异常 三.Request对象 四.PreparedRequest对象 五.Response对象 六.Session 七.HTTPAdapter 八.认证 九.编码 十.状态码查询 一.主要接口 1. requests.request(method,…
接口自动化测试流程:需求分析-用例设计--脚本开发--测试执行--结果分析1.获取接口文档,根据文档获取请求方式,传输协议,请求参数,响应参数,判断测试是否通过设计用例2.脚本开发:使用requests模块进行接口调用 request内容包含什么? ① 封装了各种请求类型,get.post 等:② 以关键字参数的方式,封装了各种请求参数,params.data.headers.token 等:③ 封装了响应内容,status_code.json().cookies.url 等:④ session…
一.项目框架如图: 1.common :这个包都是一些公共的方法,如:手机号加解密,get/post接口请求的方法封装,接口鉴权,发邮件,读写excel文件方法等等 2.result:存放每次运行的log和测试报告 3.testcase:这个包放test开头的测试用例 4.testFile:这个包放接口上传的图片(如注册需要上传头像),excel管理的接口参数 5.caselist.txt:需要运行的用例 6.config.ini :放一些配置信息,如发邮件的房间账户,接口需要使用的固定参数和版…
废话 最近在自己学习接口自动化测试,这里也算是完成一个小的成果,欢迎大家交流指出不合适的地方,源码在文末 问题 整体代码结构优化未实现,导致最终测试时间变长,其他工具单接口测试只需要39ms,该框架中使用了101ms,考虑和频繁读写用例数据导致 环境与依赖 名称 版本 作用 python 3.7.8 pytest 6.0.1 底层单元测试框架,用来实现参数化,自动执行用例 allure-pytest 2.8.17 allure与pytest的插件可以生成allure的测试报告 jsonpath…
2018-06-14   17:00:13 环境准备: - Python 3.7 - requests库 - xlrd 1.创建Excel文件 2.读取Excel文件 import xlrd class readExcel(object): def __init__(self, path): self.path = path @property def getSheet(self): # 获取索引 xl = xlrd.open_workbook(self.path) sheet = xl.she…
2020年第二期<python接口自动化+python测试开发>课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29号,每周六.周日晚上20:30-22:30 报名费:报名费3000一人(周期3个月) 联系QQ:283340479 课表如下 课程主要涉及的内容: 1.fiddler抓包与接口测试(测试基础必备) 2.python+pytest框架实现接口自动化测试(pytest框架甩unittest几条街) 3.httpr…
示例中获取参数的方法有三种: 1. 从文件(txt)中读取参数 2. 从Excel中读取参数 3. 在代码中直接写参数 def login(username,password): return 'ok' import unittest from parameterized import parameterized import BeautifulReport as bf import xlrd,xlwt def file_to_list(file_name): #从文件中读取参数 l = []…
上次我们提到了unittest单元测试框架,运用单元测试框架unittest进行编写测试用例 但是遇到了一个问题,就是难道我一个测试点中有多个测试用例,我要每一个都要去编写一条测试用例嘛?这实在是太复杂了,人工成本太高了 经过一系列的挣扎,最开始是使用的for循环实现的,这个也可以,但是过于累赘,然后采用了第三方库:ddt,简单介绍下ddt是怎么使用的 安装方式: pip install ddt 使用方式: 这个我就直接贴代码了吧,文字说明不太容易表达,测试数据还是引用之前的测试数据吧,,, i…
1.EXCEL文件接口保存方式,如图. 2.然后就是读取EXCEL文件中的数据方法,如下: import xlrd class readExcel(object): def __init__(self, path): self.path = path @property def getSheet(self): # 获取索引 xl = xlrd.open_workbook(self.path) sheet = xl.sheet_by_index(0) return sheet @property…
完整报错信息如下: {'errors': {'': ["Unexpected character encountered while parsing value: G. Path '', line 0, position 0."]}, 'title': 'One or more validation errors occurred.', 'status': 400, 'traceId': '0HM8QJ44A6SR3:00000002'}问题排查:接口的请求参数,在postman,使用…
效果图镇楼: 上述各模块作用: python(pytest): 1:用于读测试用例(本次用例写在csv文件中) 2:环境配置相关 3:提取1中的测试数据,组成请求体 4:发送请求 5:获取结果 6:断言生成测试结果 allure: 将测试结果以页面形式展示出来 jenkins: 1:集成pytest和allure 2:参数化构建 3:持续定期构建 先写这些了,下班..…
#coding=utf-8import requests url = "http://localhost:8080/jenkins/j_acegi_security_check"headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36"…
这里是实现自动化api稳当的生成,在网上看了很多swagger的文档,可能都是在为实现接口时直接使用的swagger,其实步骤差不多,但是更加详细的我还没看到,又或者说,我看着文档来的时候还是出错啦,绕了很大的弯,之前有听过要用这个,但是还是用过.接下来总结下我这次在使用过程中的步骤及一些问题. 在接口已经成型的基础上集成swagger,实现了接口文档的自动化生成,相对于开发来说节约了写文档的大部分时间,无疑是一件莫大的好事情.接下来总结下这个过程: 一.在现有Api的基础上添加Nuget包的引…
需安装pywin32 pip install pywin32 直接上源码.简单几行就搞定 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的知识.那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!QQ群:101677771 import os, sys import win32com.client import time import hashl…
import xlrd import jieba import pymysql import matplotlib.pylab as plt from wordcloud import WordCloud from collections import Counter import numpy as np def getExcelData(excel,txt): readbook = xlrd.open_workbook(excel) sheet = readbook.sheet_by_inde…
public class STR { private static String Builderrud(int a){ StringBuilder builder= new StringBuilder(); //调用StringBuilder类 for (int j=0;j<a;j++){ builder.append(j); //Builder类的追加功能 } String builder1=String.valueOf(builder); System.out.printf(builder1…
前言 一.简介 1.环境准备:python+requests+excel+unittest+ddt,主要安装以下环境,其它一般都有了,没有自行安装: pip install xlrd pip install xlutils pip install ddt pip install requests HTMLTestRunner 2.目前实现的功能: 封装requests请求方法 excel读取接口请求参数,断言结果,支持多个table 运行结果新写入一个excel中(很鸡肋,每次看excel报告都…
前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“python接口自动化-session_自动发文” 中其实已经用到,这里再陈述一遍 一.Cookie介绍 1. cookie 特点 1·保存在客户端,一般由浏览器负责存储在本地. 2·通常是加密存储的,不过由于存储在本地,很难保证数据不被非法访问,并不怎么安全,所以cookies中不宜保存敏感信息,如密码…
出处:https://www.cnblogs.com/yoyoketang/p/9356693.html 前言: python鄙视链:pytest 鄙视 > unittest 鄙视 > robotframework 鄙视 > 记流水账 鄙视 > "hello world"小白 所以,让我们一起学习pytest吧. pytest简介: pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来…
该框架分为四个包:xc_datas.xc_driven.xc_report.xc_tools. xc_datas:存放数据,xc_driven:存放执行程序,xc_report:存放生成的报告,xc_tools:存放一些工具 实现代码如下: #无token情况下,只支持get.post请求 import unittest from HTMLTestRunner import HTMLTestRunner from ddt import ddt,data from xctest_api.xc_to…
以数据驱动的形式,将用例维护在py文件中 源码分析: 变量定义 publicParameters.py """ 公共参数 , 按照各公司实情,自行编写 """ url = "https://XXXX.com" username = "XXXXXXX" password = XXXX tenantId = XXXX passport_id = XXXX encryptionKey = XXXX # 请求参数类…
所谓数据驱动测试,简单的理解为数据的改变从而驱动自动化测试的执行,最终引起测试结果的改变.通过使用数据驱动测试的方法,可以在需要验证多组数据测试场景中,使用外部数据源实现对输入输出与期望值的参数化,避免在测试中使用硬编码的数据.因此只需要创建一个测试脚本就可以处理上表的测试数据和条件的组合,使用数据驱动的模式,根据业务逻辑分解测试数据,并且定义变量,使用外部的excel里的数据使其参数化,从而避免使用源测试脚本中的固定数据,这种方式可以将测试脚本与测试数据分开,使得测试脚本在不同的数据集合下高度…
整个流程: 使用HTMLTestRunner的Run方法执行用例,用例调用Excel读取方法,将测试数据导入到unittest用例中执行,测试结果返回给HTMLTestRunner. 因为刚接触接口自动化,写的比较简单.后面也会考虑加一个请求类型的封装,excel测试数据也会增加一些字段(如用例是否运行,是否带Headers.cookie, case依赖,关联数据库,增加日志,定制化HTML,测试结果自动发送邮件等),搞完后再分享出来. 整个目录结构: ---common 存放公共库 ---te…
整体框架使用的是:Python+Unittest+Requests+PyMysql+HTMLReport  多线程并发模式 主要依赖模块 Unittest.Requests.PyMysql.HTMLReport 主要包含以下几个模块:  1. Business:与业务相关的公共模块 get_login_token:接口自动化过程中需要实时获取token,并将实时获取的token传给下个接口作为请求参数 from Business.url import url_login import reque…
从2015年毕业入行软件测试,快满4年了,之前技术分享都在百度贴吧上面,现在正式开始在博客中记录工作技术,努力成长,加油 接口测试的步骤1.组装好该接口需要的参数数据2.使用get或post附带参数数据一起传给要测试的接口3.将第2步服务器的响应数据进行验证手动测试接口太繁琐,重复工作内容多 接口一般较小改动,故接口自动化维护成本更低1)接口自动化更早介入,更早发现问题并以更低的成本修复2)缩短产品研发周期,缩短整个项目的上线时间3)一次编写,可多次使用,提高测试效率 接口自动化需求 1.接口编…