![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python接口自动化
王大力测试进阶之路
这个作者很懒,什么都没留下…
展开
-
Python自动化测试|如何解决前置模块及数据依赖(二)
在做接口自动化测试时,遇到下面这个疑惑,然后再群里请教了大家,讨论如下,可以参考下:讨论1:上海—橙子探索测试10:12:34自动化测试中,提现接口一般会依赖前置功能实名认证、绑卡、设置交易密码等才能进行提现操作或依赖前置接口实名认证、绑卡、设置交易密码的响应数据(姓名、身份证、卡号、交易密码)等,这只是简单的实例,可能实际场景中远比这种复杂的多,所以进行提现接口测试时,需先构建完成...原创 2020-01-10 10:16:43 · 1436 阅读 · 4 评论 -
Python自动化测试问题及处理方法(一)
一、接口自动化测试中,会用到测试账号,如何合理运用账号?账号一般用于接口登录、接口用例传参、操作sql等,目前账号是写到yaml配置文件里,如果1个账户使用会出现资源冲突,可以配置多个账号使用,登录脚本中、用例脚本中、sql脚本中,先将读取过来的账号设为全局变量,然后用到的地方进行替换就。保证了账号的更换至需要动配置文件就可以了二、接口自动化测试中,接口依赖前置数据较多,如何处理?根据...原创 2020-01-08 15:49:16 · 783 阅读 · 0 评论 -
Python递归通用接口响应深层提取
最近在做接口自动化断言时,每个接口文件里都写了一遍提取接口响应数据,然后append到列表里,传给公共的断言方法与sql查询出来的数据做比对,这样如果是100个接口,每个接口都写一遍接口响应数据提取,就要写100遍,太过依赖于返回数据的格式了,如果list里面多嵌套几层,而且都要效验,那....,通用性也不好,据说递归可以实现此通用方法,可以一层一层拆,提取出自己想要的数据,组装一...原创 2019-12-21 22:17:10 · 354 阅读 · 0 评论 -
Pytest跳过执行之@pytest.mark.skip()详解大全
一、skip介绍及运用 在我们自动化测试过程中,经常会遇到功能阻塞、功能未实现、环境等一系列外部因素问题导致的一些用例执行不了,这时我们就可以用到跳过skip用例,如果我们注释掉或删除掉,后面还要进行恢复操作。1、skip跳过成功,标识为s============================= 2 skipped in 0.04s =================...原创 2019-11-29 12:20:23 · 8671 阅读 · 1 评论 -
Python Unittest参数化parameterized之数据驱动
一、parameterized介绍之前我们写过Unittest第三方库parameterized类似Unittest的DDT、Pytest@pytest.mark.parametrize,可以实现参数化用户数据驱动,避免写多个方法(冗余)二、安装pip install parameterized三、导入from parameterized import paramete...原创 2019-11-26 12:49:39 · 2112 阅读 · 3 评论 -
Pytest脚本中运行用例方式
脚本树如下:test1文件下test_01.py存放test1和test2用例test1文件下test_02.py存放test1和test2用例test2文件下test_03.py存放test1和test2用例test2文件下test_04.py存放test1和test2用例1、运行所有用例import pytestif __name__ == "__main__":...原创 2019-11-06 16:02:22 · 1521 阅读 · 0 评论 -
Python unittest中初始化固件setUp和销毁固件tearDown详解
unittest.TestCase 包含了setUp()和tearDown()两个方法,其中 setUp() 方法用于初始化测试固件;而 tearDown() 方法用于销毁测试固件。程序会在运行每个测试用例(以 test_ 开头的方法)之前自动执行 setUp() 方法来初始化测试固件,井在每个测试用例(以 test_ 开头的方法)运行完成之后自动执行 tearDown() 方法来销毁测试...原创 2019-09-08 23:45:01 · 2152 阅读 · 1 评论 -
Python脚本做接口测试,抛弃接口测试工具是否可行?(一)
最近在学习python语言,一直再想,工作中经常性会去调试接口、测试接口,于是就思考一番,怎么能抛弃以前经常依赖使用工具做接口测试的局限性,换做python脚本来做呢?接下来就产生下如下脚本,觉得还行,实用性很强,可以做基本的接口调试和接口测试,不废话了,上代码,巴拉~~~~~巴拉~~~~~巴拉工具做接口测试:局限性大、效率低、技术得不到提升python做接口测试:扩展性大、灵活、...原创 2019-07-29 11:04:36 · 500 阅读 · 0 评论 -
Python脚本做接口测试,抛弃接口测试工具是否可行?(二)
学习是为了更好的应用,之前做接口测试一直用的postman、fiddler,感觉用工具还是有些局限性,于是想着把学到的python灵活运用到接口测试中,于是就有了以下案例,思考着想用unittest做个简单的接口测试脚本,可以支持单传参和多传参,平时工作中可以随时使用,不但方便,还可以巩固到学习的知识,。思考点:1、脚本支持单传参和多传参,利用了for循环和ddt实现2、接口heade...原创 2019-08-02 15:16:30 · 215 阅读 · 0 评论 -
Python史上最简单5行代码群发邮件Zmail模块
zmail简介Zmail 允许你发送和接受邮件尽可能的简单。你不需要去检查你的服务器地址、端口以及自己构造MIME对象,使用Zmail,你只需要关注你的邮件内容即可。Zmail只在python3中运行,不需要第三方模块。不支持python2Zmail的优势自动填充大多数导致服务端拒信的头信息(From To LocalHost之类的) 将一个字典映射为email,构造信件就像构造字典...原创 2019-07-05 23:19:02 · 5649 阅读 · 3 评论 -
【Jmeter篇】1小时轻松搞定项目接口自动化测试与数据驱动
之前我们的用例数据都是配置在JmeterHttp 请求中,每次需要增加,修改用例都需要打开 jmeter 重新编辑,当用例越来越多的时候,用例维护起来就越来越麻烦,有没有好的方法来解决这种情况呢?其实我们可以将用例的数据存放在 csv 文件中,然后通过 csv 文件配置来读取用例中的数据,执行测试。用例数据如下图所示:用例设计创建用例文件:login.csv...原创 2019-06-16 00:19:32 · 2843 阅读 · 5 评论 -
Python模拟实现multipart/form-data格式上传图片文件
一、单字段发送单个文件url = "http://httpbin.org/post"data = Nonefiles = { ... }r = requests.post(url, data, files=files)而这个files参数是可以接受很多种形式的数据,最基本的2种形式为字典类型和元祖列表类型1、字典类型的files参数{ "field1" : ("fi...原创 2019-05-30 13:50:28 · 24633 阅读 · 0 评论 -
Python单元测试框架之unittest+requests+ddt+excel接口自动化测试
unitetest是python里单元测试框架,是基于 java 的 junit 测试框架相当于是一个 python 版的 junit,除了 unittest,还有一个 pytest 框架unittest.TestCase:TestCase类,所有测试用例类继承的基本类一个TestCase的实例就是一个测试用例。一个测试用例要包括测试前准备环境的搭建(setUp),执行测试代码(run)...原创 2019-04-03 11:42:09 · 3132 阅读 · 0 评论 -
Python之日志处理(logging模块)详解
logging模块简介logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等;相比print,具备如下优点1、可以通过设置不同的日志等级,在release版本中只输出重要信息,而不必显示大量的调试信息2、print将所有信息都输出到标准输出中,严重影响开发者从标准输出中查看其它数据;logging则可以由开发者决...原创 2019-04-10 17:26:38 · 2078 阅读 · 0 评论 -
Python之Pymysql模块操作MySQL增删改查
Python3 MySQL 数据库连接 - PyMySQL 驱动PyMySQL 连接数据库,实现增删改查什么是 PyMySQL?PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。...原创 2019-04-05 00:55:12 · 1420 阅读 · 0 评论