zl程序教程

pytest

  • pytest 执行用例_pytest怎么指定部分用例执行

    pytest 执行用例_pytest怎么指定部分用例执行

    前言平常我们功能测试用例非常多时,比如有1千条用例,假设每个用例执行需要1分钟,如果单个测试人员执行需要1000分钟才能跑完当项目非常紧急时,会需要协调多个测试资源来把任务分成两部分,于是执行时间缩短一半,如果有10个小伙伴,那么执行时间就会变成十分之一,大大节省了测试时间为了节省项目测试时间,10个测试同时并行测试,这就是一种分布式场景同样道理,当我们自动化测试用例排常多的时候, 一条条按顺序执

    日期 2023-06-12 10:48:40     
  • Pytest(1)安装与入门「建议收藏」

    Pytest(1)安装与入门「建议收藏」

    pytest介绍pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。根据pytest的官方网站介绍,它具有如下特点:非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考能够支持简单的单元测试和复杂的功能测试支持参数化执行测试过程中可以将某些测试跳过(skip),或者对某些预期失败的case标记成失

    日期 2023-06-12 10:48:40     
  • pytest parametrize fixture_参数化方法

    pytest parametrize fixture_参数化方法

    前言当某个接口中的一个字段,里面规定的范围为1-5,你5个数字都要单独写一条测试用例,就太麻烦了,这个时候可以使用pytest.mark.parametrize装饰器可以实现测试用例参数化。 官方示例下面是一个典型的范例,检查特定的输入所期望的输出是否匹配:# test_expectation.py import pytest @pytest.mark.parametrize("

    日期 2023-06-12 10:48:40     
  • pytest的assert_Python断言

    pytest的assert_Python断言

    大家好,又见面了,我是你们的朋友全栈君。 前言断言是写自动化测试基本最重要的一步,一个用例没有断言,就失去了自动化测试的意义了。什么是断言呢? 简单来讲就是实际结果和期望结果去对比,符合预期那就测试pass,不符合预期那就测试 failed 案例演示def f(): return 3 def test_function(): a = f() assert a % 2

    日期 2023-06-12 10:48:40     
  • Pytest(1)安装与入门[通俗易懂]

    Pytest(1)安装与入门[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。pytest介绍pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。根据pytest的官方网站介绍,它具有如下特点:非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考能够支持简单的单元测试和复杂的功能测试支持参数化执行测试过程中可以将某些测试跳过(skip

    日期 2023-06-12 10:48:40     
  • pytest+allure实战

    pytest+allure实战

    大家好,又见面了,我是你们的朋友全栈君。pytest+allure实战pytest+allure实战基本架构Login.pytest.pyrun_all_case.py测试报告pytest+allure实战写之前,说一下自己的感受,大家之前调试出来的框架什么的一定要做好记录,或者归纳整理好,pytest+allure很久之前就用过了,但是当时出报告以后就扔一边了,当我想整理写一篇关于这个的时候完全

    日期 2023-06-12 10:48:40     
  • Pytest和Allure测试框架-超详细版+实战

    Pytest和Allure测试框架-超详细版+实战

    大家好,又见面了,我是你们的朋友全栈君。 文章目录一:pytest的介绍,安装,框架结构,执行方式1,特点2,安装3, pytest的框架结构4,执行方式二:Pytest -断言、跳过及运行1,Pytest -断言、跳过及运行2,mark中的skip(跳过)3,mark中的xfail(失败)4,使用自定义标记mark只执行部分用例5,文件名类名方法执行部分用例6,-k 组合调用执行部分用例三, P

    日期 2023-06-12 10:48:40     
  • pytest重试_连接重连失败是什么意思

    pytest重试_连接重连失败是什么意思

    大家好,又见面了,我是你们的朋友全栈君。 安装:pip3 install pytest-rerunfailures 重新运行所有失败用例要重新运行所有测试失败的用例,请使用--reruns命令行选项,并指定要运行测试的最大次数:$ pytest --reruns 5复制添加重新运行的延时要在两次重试之间添加延迟时间,请使用--reruns-delay命令行选项,其中包含您希望在下一次测试重试

    日期 2023-06-12 10:48:40     
  • pytest的assert_assert断言语句

    pytest的assert_assert断言语句

    大家好,又见面了,我是你们的朋友全栈君。前言断言是写自动化测试基本最重要的一步,一个用例没有断言,就失去了自动化测试的意义了。什么是断言呢? 简单来讲就是实际结果和期望结果去对比,符合预期那就测试pass,不符合预期那就测试 failed 案例演示def f(): return 3 def test_function(): a = f() assert a % 2 =

    日期 2023-06-12 10:48:40     
  • pytest重试_微信加载插件失败怎么办

    pytest重试_微信加载插件失败怎么办

    大家好,又见面了,我是你们的朋友全栈君。 安装:pip3 install pytest-rerunfailures 重新运行所有失败用例要重新运行所有测试失败的用例,请使用--reruns命令行选项,并指定要运行测试的最大次数:$ pytest --reruns 5复制添加重新运行的延时要在两次重试之间添加延迟时间,请使用--reruns-delay命令行选项,其中包含您希望在下一次测试重试

    日期 2023-06-12 10:48:40     
  • pytest-allure_什么是思想报告

    pytest-allure_什么是思想报告

    大家好,又见面了,我是你们的朋友全栈君。前言allure是一个report框架,支持java的Junit/testng等框架,当然也可以支持python的pytest框架,也可以集成到Jenkins上展示高大上的报告界面。 mac环境:1.java == 1.8.02.python == 3.7.63.pytest == 6.2.14.allure-pytest == 2.8.95.allure

    日期 2023-06-12 10:48:40     
  • 这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现

    这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现

    大家好,又见面了,我是你们的朋友全栈君。 今年是以往10年中最坏的一年,是未来10年中最好的一年,同时也是自动化测试爆发的一年,自动化从18年开始萌芽之后自此功能测试打遍天下的日子已经一去不复返了。在自动化的领域里面,接口自动化当之无愧的是投入和产出比最高的一种,也是企业首先需要实施落地的一种自动化。众所周知,目前市面上大部分的企业实施接口自动化最常用的有两种方式:1.基于工具类的接口自动

    日期 2023-06-12 10:48:40     
  • pytest测试框架和unittest_pytest测试框架从入门到精通

    pytest测试框架和unittest_pytest测试框架从入门到精通

    1.运行unittest时要保证默认测试环境是unittest 在File–》settings 里面找到tool 2.py文件的类必须继承TestCase测试用例必须以test开头调用main方法来执行测试用例测试用例按照ascii的顺序执行import unittest # 必须继承TestCase类 class Test(unittest.TestCase): # 前置方法 在

    日期 2023-06-12 10:48:40     
  • Pytest测试框架一键动态切换测试环境实现思路及方案

    Pytest测试框架一键动态切换测试环境实现思路及方案

    前言在上一篇文章《Pytest fixture及conftest详解》中,我们介绍了fixture的一些关键特性、用法、作用域、参数等,本篇文章将结合fixture及conftest实现一键动态切换自动化测试环境。在开始前,我们可以先思考几个问题:动态切换测试环境的目的是什么(能够解决什么问题)?该如何实现(实现方案)?具体步骤是什么(实现过程)?一、动态切换测试环境的目的是什么?动态切换测试环境

    日期 2023-06-12 10:48:40     
  • 测试之路 pytest接口自动化框架扩展-params数据解析

    测试之路 pytest接口自动化框架扩展-params数据解析

    测试之路 pytest接口自动化框架扩展-MS数据解析哈喽大家好,上期内容介绍了一下数据分流的一个函数。可以理解为我们日常生活中的经理角色。用来分配任务。本期就先介绍他手下的一个小弟,小p(params解析函数)。废话不多,昊料开始~开篇上期我们在展示数据分流的函数中,判断了一下当前接口是否为get。在MeterSphere中,get的接口参数相对简单 在MeterSphere的json文件中。r

    日期 2023-06-12 10:48:40     
  • 测试之路 pytest接口自动化框架扩展-完结篇

    测试之路 pytest接口自动化框架扩展-完结篇

    哈喽各位,好久没更新接口自动化脚本内容分享了。本期内容做个收尾。将接口自动化脚本剩余部分--参数必填项、类型、字段长度以及参数生成等函数做个分享。废话不多,昊料开始~开篇上期内容介绍了提取字段属性相关函数的代码思路以及源码。接下来就是解析这些字段的属性,并生成所需要的参数值。必填函数首先说下必填函数首先定义两个列表。一个列表存储正常的参数。一个用来存储字段的key值。第一个列表主要用来生成常规数据

    日期 2023-06-12 10:48:40     
  • 接口测试第10讲:基pytest框架requests自动化测试

    接口测试第10讲:基pytest框架requests自动化测试

    http://mpvideo.qpic.cn/0bc3nuacoaaa2qacpnbmr5rva3ode5wqajya.f10002.mp4?dis_k=83573a5816ecedd0ec1514cd80edd9e2&dis_t=1672308280&play_scene=10400&vid=wxv_2587648712903016448&format_id=10

    日期 2023-06-12 10:48:40     
  • pytest文档82 - 用例收集钩子  pytest_collect_file  的使用

    pytest文档82 - 用例收集钩子 pytest_collect_file 的使用

    前言pytest 提供了一个收集用例的钩子,在用例收集阶段,默认会查找test_.py 文件或者 _test.py文件。 如果我们想运行一个非python的文件,比如用yaml 文件写用例,那么就需要改变用例的收集规则。 以最新版pytest 7.2.0版本为例YAML 测试示例在 Yaml 文件中指定测试的基本示例, 以下是官方文档上给的一个执行yaml格式的内容作为自定义测试的例子。 相关文档

    日期 2023-06-12 10:48:40     
  • pytest文档83 - 把收集的 yaml 文件转 Item 用例并运行

    pytest文档83 - 把收集的 yaml 文件转 Item 用例并运行

    前言上一篇通过用例收集钩子 pytest_collect_file 把 yaml 文件收集起来的,仅仅只是收集到用例,还不能执行。 接下来详细讲解,如何把yaml 文件的内容,转成Item 用例去执行。pytest_collect_file 收集钩子准备一个待执行的YAML文件内容test_login.ymlname: login case1 request: url: http://12

    日期 2023-06-12 10:48:40     
  • pytest + yaml 框架 - 3.全局仅登录一次,添加Authentication token认证

    pytest + yaml 框架 - 3.全局仅登录一次,添加Authentication token认证

    前言我们在使用自动化测试框架的时候,经常会遇到一个需求,希望在全局用例中,仅登录一次,后续所有的用例自动带上请求头部token 或者cookies。环境准备Python 3.8版本 Pytest 7.2.0 最新版pip 安装插件pip install pytest-yaml-yoyo复制需使用v1.0.2 版本登录fixture 功能我在pytest + yaml 框架框架中封装了一个内置fix

    日期 2023-06-12 10:48:40     
  • pytest + yaml 框架 -7.用例分层机制

    pytest + yaml 框架 -7.用例分层机制

    前言当我们测试流程类的接口,需反复去调用同一个接口,就会想到复用API,在代码里面可以写成函数去调用。 那么在yaml 文件中,我们可以把单个API写到一个yaml 文件,测试用例去调用导入API。pip 安装插件pip install pytest-yaml-yoyo复制用例分层功能在 v1.0.5 版本上实现用例分层我这里只分2层:API 层 和 Test case 用例层API 层: 描述接

    日期 2023-06-12 10:48:40     
  • pytest + yaml 框架 -9.logging日志输出和保存

    pytest + yaml 框架 -9.logging日志输出和保存

    前言pytest 运行yaml 文件默认在控制台显示简短的信息,当我们需要排查问题时,需开启日志追踪更多的信息。logging 日志开启pytest 的日志分2个部分:console 控制台输出的日志log_file 保存到本地文件的日志本插件默认情况下会记录运行日志保存在项目根目录logs下,以当前时间保存txt文本日志内容。 日志默认保存info级别。 console 控制台默认不输出日志开

    日期 2023-06-12 10:48:40     
  • pytest + yaml 框架 -12.支持执行sql 和 断言sql

    pytest + yaml 框架 -12.支持执行sql 和 断言sql

    前言当我们在测试环境写好自动化的代码,领导说你把代码部署到联调环境再测一测,这时候去改用例里面的配置是很痛苦的。 所以我们在设计自动化用例的时候,就先要想到多环境的配置与切换。多环境配置如果需用到多套环境 test/uat 等,那么应该在用例的根目录(pytest.ini 同级文件)创建一个config.py 文件 pip 安装插件pip install pytest-yaml-yoyo复制多套环

    日期 2023-06-12 10:48:40     
  • Pytest学习笔记7——接口自动化测试框架实战附源码(开荒篇)

    Pytest学习笔记7——接口自动化测试框架实战附源码(开荒篇)

      引言  前面介绍了pytest框架一些基础知识与基本用法,掌握了一定基础后,我们可以进行项目实战,搭建pytest接口自动测试框架。  框架设计思路  画了一张草图,大家自行领会。   项目结构   环境配置allure-pytest==2.8.6 allure-python-commons==2.8.6 bs4==0.0.1 celery==4.3.0 cycler==0.10.0 Fake

    日期 2023-06-12 10:48:40     
  • Pytest学习笔记4——测试步骤

    Pytest学习笔记4——测试步骤

      引言  大家都知道功能测试用例组成的基本要素:用例ID,模块名,测试用例名称,前置条件,测试步骤,预期结果,实际结果等等。前置条件以及测试参数化,前面已经讲过,现在简单讲一下pytest测试步骤的用法。  案例  如果想在报告中展示测试步骤,需要使用装饰器@allure.step(),该装饰器写在测试步骤函数上面,测试方法直接调用测试步骤函数即可。具体看代码:import allure @a

    日期 2023-06-12 10:48:40     
  • pytest+websocket自动化集成实践

    pytest+websocket自动化集成实践

    01websocket协议1、介绍WebSocket是一种在单个TCP通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间

    日期 2023-06-12 10:48:40     
  • pytest学习和使用9-fixture中conftest.py如何使用?

    pytest学习和使用9-fixture中conftest.py如何使用?

    1 引入之前学习使用fixture前置实现用例的登陆,当时在一个脚本中实现的;那如果其他的脚本也需要用到登陆,这样调用起来可能比较麻烦;所以我们可以把登陆的fixture放到conftest.py,让pytest去查找。2 conftest.py简介conftest.py是一个配置文件;可单独管理一些预置的操作场景;pytest里面默认读取conftest.py里面的配置;可以理解为一个专门存放f

    日期 2023-06-12 10:48:40     
  • pytest学习和使用10-Pytest中的测试用例如何跳过执行?

    pytest学习和使用10-Pytest中的测试用例如何跳过执行?

    1 引入有时候我们需要对某些指定的用例进行跳过,或者用例执行中进行跳过,在Unittest中我们使用skip()方法;在Pytest中如何使用呢?在Pytest中也提供了两种方式进行用例的跳过skip、skipif。2 Unittest中的用例跳过# -*- coding:utf-8 -*- # 作者:NoamaNelson # 日期:2022/11/17 # 文件名称:test_unittes

    日期 2023-06-12 10:48:40     
  • pytest学习和使用16-HTML报告如何生成?(pytest-html)

    pytest学习和使用16-HTML报告如何生成?(pytest-html)

    1 插件介绍pytest-HTML是一个插件,pytest用于生成测试结果的HTML报告;这个插件需要进行安装。2 pytest-html安装直接使用pip安装即可:pip install pytest-html复制安装信息如下:C:\Users\Administrator>pip install pytest-html Looking in indexes: https://pypi.

    日期 2023-06-12 10:48:40     
  • pytest学习和使用18-pytest.ini配置文件如何使用?

    pytest学习和使用18-pytest.ini配置文件如何使用?

    1 配置文件的作用改变pytest的运行方式;pytest.ini是一个固定的文件;pytest.ini用来读取配置信息。2 文件格式# 文件名为:pytest.ini [pytest] addopts = xfail_strict = 复制3 查看pytest.ini的选项使用命令:pytest --help复制如下:C:\Users\Administrator>pytest --h

    日期 2023-06-12 10:48:40     
  • pytest-断言语句

    pytest-断言语句

    pytest允许在测试用例中使用标准的python断言,如下:# test_case.py中的内容 def foo(x, y): return x + y def test_01(): assert foo(3, 4) == 8复制本例中的函数期望返回一个固定的值。如果该断言失败了,你会看到该函数的返回值:$ pytest test_assert1.py =================

    日期 2023-06-12 10:48:40