python接口自动化
文章平均质量分 61
测试之道.
喜欢的可以点个关注,一起学习,博客逐步更新,加v:hz223336进群领取三大pytest自动化测试框架代码,一起学习进步。
展开
-
自动化开展思路
举例:昨天下班前一个上线版本,修改购物车中一个规格商品的问题,导致一个爆款商品下单金额计算错误的BUG;本人在公司一直从事自动化测试推进工作,最近在好友的邀请下去其就职的公司分享如何开展自动化测试!而开展有成效的自动化之后, 开发花了半个小时定位并修改规格商品的问题,半个小时左右BUG回归;以接口自动化优先保障后台业务的正确性,辅助UI测试保障前端重点业务逻辑,配合表数据校验;然后跑自动化用例,发现导致的爆款商品下单金额计算错误的BUG,再修复爆款商品问题;专门的自动化测试写,测试结束,自己补充用例!原创 2024-02-21 16:14:30 · 1028 阅读 · 0 评论 -
最全最新pytest接口自动化框架
pytest接口自动化框架介绍:Python+pytest+allure+log+yaml(默认数据和动态传参)+数据驱动+关键字驱动+pymysql(数据清理尽量接口清理)+一键切换环境+多角色随意切换(admin后台,SaaS后台,APP卖家,APP买家)+Jenkins持续集成+Git+钉钉输出测试报告加我微信:hz223336,进测试之道群里领取最新免费的代码,欢迎进入测试大家庭,道长欢迎你...原创 2021-05-25 16:51:53 · 3531 阅读 · 6 评论 -
pytest实现多进程与多线程运行
前言:如果想分布式执行用例,用例设计必须遵循以下原则:1、用例之间都是独立的,2、用例a不要去依赖用例b3、用例执行没先后顺序,4、随机都能执行每个用例都能独立运行成功每个用例都能重复运行,不影响其它用例这跟就我们平常多个人工测试一样,用例都是独立的,可以随机分配不同人员执行,互相不依赖,用例之间也不存在先后顺序一、pytest-parallel 安装: pip install pytest-parallel 常用参数配置: --workers=n:多进程运行需要加此参数, n是进程原创 2021-05-21 13:42:41 · 2744 阅读 · 0 评论 -
‘allure‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
‘allure’ 不是内部或外部命令,也不是可运行的程序 或批处理文件 可能原因,及检查点:第一步,安装Python依赖库。两种方式任选其一,第一种在dos窗口中,输入下面三个命令:pip3 install pytestpip3 install allure-pythonpip3 install allure-python-commons12345第二种方法,打开Pycharm,点击File,点击Settings,选择project interpreter,点击右上角+加号按钮,搜索并选转载 2021-05-20 14:25:39 · 6905 阅读 · 0 评论 -
yaml文件中变量替换
在做接口、UI自动化的时候,我们可以用yaml文件来管理测试用例的步骤、数据,因为每次测试的数据需要动态变换,所以yaml文件中相关参数可能需要用变量表示。那么,我们怎么进行变量的传值呢?这里可以用到字符串的模板替换功能,官方文档:https://docs.python.org/zh-cn/3/library/string.html#template-stringsyaml文件中内容如下:method: geturl: http://www.baidu.comjson: key1: $valu原创 2021-05-18 15:24:29 · 5786 阅读 · 2 评论 -
Yaml详解
在自动化过程中,需要使用配置文件储存数据,比如数据库信息、账号信息、域名等。其中,yaml文件是一种配置文件类型,相比较ini,conf配置文件来说,更加的简洁,操作也更加简单,同时可以存放不同类型的数据。以下主要介绍yaml语法、yaml存储数据,封装类读写yaml配置文件。一 yaml介绍及使用01 yaml简介YAML 语言( /ˈjæməl/ )的设计目标,就是方便人类读写。它实质上是一种通用的数据串行化格式。YAML 是一种非常灵活的格式,几乎是 JSON 的超集。除了支持注释、换行符原创 2021-05-18 14:42:21 · 4430 阅读 · 0 评论 -
pytest之fixture使用详解
pytest之fixture使用详解usefixtures与传fixture区别1、如果fixture有返回值,那么usefixture就无法获取到返回值,这个是装饰器usefixture与用例直接传fixture参数的区别。2、当fixture需要用到return出来的参数时,只能讲参数名称直接当参数传入,不需要用到return出来的参数时,两种方式都可以。如果区别没看懂,看完下面的距离就懂了简介:fixture区别于unnitest的传统单元测试(setup/teardown)有显著改进:原创 2021-05-14 16:15:25 · 1906 阅读 · 1 评论 -
pytest接口测试中token和header的处理
最近在学习pytest框架,然后遇到了一些问题,要是刚开始接触接口测试的话肯定是没有思路的。之前有深入的用过jmeter,发现好多也都是想通的,记录一下,之后再用其他的框架的时候,也可以参考这个思路。一、jmeter中token的处理我相信每个公司的接口都会有token这个值的。这个token一般是先完成登录然后返回的。之前用jmeter的时候,jmeter有很多自己的插件,比如公共参数、用户定义的变量等。当我执行完登录接口后把token给put出来,然后在用户定义的的变量处定义一个token来接收登录原创 2021-03-09 14:42:15 · 2835 阅读 · 6 评论 -
pytest 参数化
import pytest test_datas = [ (11, 22, 33), (22, 33, 55) ] datas_dict = [ {"a": 1, "b": 2, "c": 3}, {"a": 11, "b": 22, "c": 33}, {"a": 111, "b": 222, "c": 333}, ] # 方式一:直接写 @pytest.mark.p...原创 2020-08-20 15:23:20 · 609 阅读 · 0 评论 -
pytest接口自动化-源码
**框架结构**base :封装请求方式比如:get postcommon:封装数据库操作和日志的configs:cfg存放数据库或者邮箱的数据,redconfig:用来读取操作data:data.xls存放测试用例数据,requestData.json,从Excel取接口参数放这里 好修改logs :方日志page:参数化操作report:放测试报告 都是集成jenkins的a...原创 2020-04-29 15:11:30 · 2106 阅读 · 0 评论 -
python接口自动化实战+unitest+pytest+jenkins+allure测试报告
python接口自动化源代码https://github.com/heboqiang/python-基于python+unitest+request+alluregit地址 git@github.com:heboqiang/python-.gitbase:封装请求方法层common:封装数据库和日志层configs:封装配置数据层data:存放测试用例层lo...原创 2019-09-16 15:58:15 · 4490 阅读 · 3 评论 -
Pytest和Allure测试框架-超详细版+实战
文章目录一:pytest的介绍,安装,框架结构,执行方式1,特点2,安装3, pytest的框架结构4,执行方式二:Pytest -断言、跳过及运行1,Pytest -断言、跳过及运行2,mark中的skip(跳过)3,mark中的xfail(失败)4,使用自定义标记mark只执行部分用例5,文件名类名方法执行部分用例6,-k 组合调用执行部分用例三, Pytest -fixture1. 如下: ...原创 2019-09-23 20:28:27 · 110802 阅读 · 105 评论 -
Python必会的单元测试框架 —— unittest
unittest是xUnit系列框架中的一员,如果你了解xUnit的其他成员,那你用unittest来应该是很轻松的,它们的工作方式都差不多。unittest核心工作原理unittest中最核心的四个概念是:test case, test suite, test runner, test fixture。下面我们分别来解释这四个概念的意思,先来看一张unittest的静态类图(下面的类...原创 2019-09-19 17:00:14 · 421 阅读 · 0 评论 -
requests,selenium,appium自动化底层原理
Charles-MQappium ,selenium ,webdriver 运行原理与机制requests底层原理https://www.jianshu.com/p/643805a92fdeapi.py实现了基本的对外接口,即get,post,delete等http方法名命名的一系列函数,经常在代码中看到有人将这些方法又封装了一个通用函数, 实际上这些方法就是通过调用一个更为通用的...原创 2019-09-21 17:22:36 · 1033 阅读 · 0 评论