pytest框架介绍

这篇具有很好参考价值的文章主要介绍了pytest框架介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

pytest框架介绍

一,pytest单元测试框架


1. 什么是单元测试框架
  • 单元测试是指在软件开发中,针对的软件的最小单位(函数,方法)进行正确性的检测

2. 单元测试框架
  • java:Junit和testng

  • python:unittest和pytest

3. 单元测试框架是做什么的?
  1. 测试发现:找执行文件

  1. 测试执行:按照一定的规则执行

  1. 测试判断:通过断言判断

  1. 测试报告:统计执行进度,好事,通过率,生成测试报告

  • 二 、 单元测试框架和自动化测试框架的关系:

  1. 什么是自动化测试框架

封装了 技术 管理等模块

  1. 作用:提高效率和维护成本,减少人工干预和增加准确性,增加代码的重用性

  1. pytest单元测试框架和自动化测试框架的关系

单元测试框架:只是自动化测试框架中的组成部分之一

pom设计模式

数据驱动

关键字驱动

全局配置文件的封装

日志监控

selenium,request二次封装

断言

报告邮件

更多都是自动化测试框架中的组成部分之一

三 、 pytest简介


  1. pytest 是非常成熟的pytest的单元测试框架,比unittest更灵活,容易上手

  1. 可以和selenlum,request,applum结合实web自动化,接口自动化,app自动化

  1. 可以实现测试用例的跳过及reruns的失败用例重试

  1. 可以和allure生成非常美观的测试报告

  1. pytest和Jenkins持续继承

  1. 有很多插件,实现实用的操作:

  • pytest,

  • pytest-html :生成html的自动化测试报告

  • pytest-xdist:测试用例的分布式执行,多cpu分发

  • pytest-ordering:改变测试用例的执行顺序

  • pytest-rerunfailures:用例失败后重跑

  • alluer-pytest:用于生成美观的测试报告

pytest框架详解,pytest,单元测试,python,Powered by 金山文档

将包名写在requirements.txt中,pip install -r equirements.txt 全部下载

四、pytest 规则和基础应用


  1. 模块名必须以test开头或者test结尾

  1. 测试类必须以Test开头,并且不能有init方法

  1. 测试方法必须以test开头

五、pytest测试用例的运行方法


  1. 主函数模式:

  • 运行所有:pytest.main()

  • 指定模块:pytest.main(['-vs','test_login.py'])

  • 指定目录:pytest.main(['-vs','/interface_testcase'])

  • 通过nodeid指定用例执行:nodeid由 模块名,分割符,类名,方法名,函数名组成

pytest.main(["-vs",'./interface_testcase/test_interface.py::test_04_func'])

pytest.main(["-vs",'./interface_testcase/test_interface.py::Test_interface::test_01'])

  1. 命令行的模式:

  • 运行所有:pytest

  • 指定模块:pytest -vs test_login.py

  • 指定目录:pytest.main -vs | /interface_testcase

  • nodeid:pytest -vs ./interface_testcase/test_interface.py::Test_interface::test_01

参数详解:

  • -s:输出调试信息,包括print的打印信息

  • -v:显示更详细的信息

  • -vs:这两个参数一起用

  • -n:多线程或者分布式运行用例:pytest.main(["-vs","-n=3"])

  • --reruns:用例失败后,重跑的次数:pytest.main(["-vs","./testcase","-n=2","--reruns=2"])

  • -x:只要有一个用例报错,就停止

  • --maxdfail=2: 允许失败两次,不影响用例执行

  • -k:根据测试用例的部分字符串执行测试用例

  • -html:./report/report.html 生成html的测试报告

如:pytest -vs ./testcase -k "ao"

  1. 通过读取pytest.ini配置文件运行

  • pytest.ini:是pytest单元测试框架的核心配置文件

  • 位置:一般是根目录

  • 编码:必须是ANSI,推荐使用nopad++

  • 作用:更改pytest的默认行为

  • 运行的规则:启动配置

[pytest]

#命令行参数,用空格分开

addopts=-vs--html=./report/report.html

#配置测试文件夹

testpaths= ./testcase

#测试搜索的模块文件名称

python_files=test*.py

#测试搜索的测试类名

python_classes=Test*

#测试搜索的测试函数名

python_funtions=test*

六、pytest用例的执行顺序


unittest:ascii的大小来决定执行顺序

pytest:默认是从上到下

改变默认的顺序:使用Mark标记

@pytest.mark.run(order=3)

七、分组执行(冒烟,分模块执行,分接口和web执行)


smoke:冒烟用例,分布在各个模块里

pytest.main(['-m smoke or usermanger'])

markers=

smoke:冒烟用例

usermanger:用户管理模块

productmanager:商品管理模块

八、pytest跳过测试用例


  1. 无条件跳过:

@pytest.mark.skip(reason='太慢')

  1. 有条件跳过:

@pytest.mark.skipif(age>18,reason='已成年')#满足条件不执行文章来源地址https://www.toymoban.com/news/detail-598097.html

到了这里,关于pytest框架介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 面试:单元测试unit testing & 使用pytest

    calc.py test_calc.py employee.py test_employee.py 输出为: setupClass setUp test_apply_raise tearDown .setUp test_email tearDown .setUp test_fullname tearDown .teardownClass Ran 3 tests in 0.001s OK employee.py test_employee.py 输出为: setupClass setUp test_apply_raise tearDown .setUp test_email tearDown .setUp test_fullname tearDown .setUp tearDown

    2024年02月10日
    浏览(44)
  • 【自动化测试教程】 —— pytest 框架详解 ~

    特点: 容易上手, 入门简单, 文档丰富, 文档中有很多参考案例 支持简单的单元测试和复杂的功能测试 支持参数化 执行测试用例过程中, 支持跳过操作 支持重复失败的case 支持运行Nose, unittest编写测试用例 pytest支持很多第三方插件 方便和持续集成工具集成 断言方法: assert res

    2024年02月12日
    浏览(49)
  • Selenium+Pytest自动化测试框架详解

    selenium自动化+ pytest测试框架 本章你需要 一定的python基础——至少明白类与对象,封装继承; 一定的selenium基础——本篇不讲selenium,不会的可以自己去看selenium中文翻译网 测试框架有什么优点 代码复用率高,如果不使用框架的话,代码会很冗余 可以组装日志、报告、邮件等

    2024年02月08日
    浏览(93)
  • 自动化测试框架pytest系列之21个命令行参数介绍(二)

    第一篇 :  自动化测试框架pytest系列之基础概念介绍(一)-CSDN博客 接上文 3.pytest功能介绍 3.1 第一条测试用例 首先 ,你需要编写一个登录函数,主要是作为被测功能,同时编写一个测试脚本 ,进行测试登录功能 。 登录函数脚本: login.py 测试脚本 :test01_login.py 3.2 pytest的运行

    2024年02月02日
    浏览(49)
  • 自动化测试中如何判断测试是否通过?详解 Pytest 测试框架的断言用法

    目录 前言: 01 — Python 原生的 assert 02 — Pytest 的 assert 优点 03 — Pytest 断言的用法 4.1 断言字符串 4.2 断言函数或者接口返回值 4.3 断言集合类型 04 — Pytest 断言 Excepiton 05 — 为断言添加自定义功能 06 — 禁止 Pytest 的 assert 特性 07 — 总结 在自动化测试中,判断测试是否通过是

    2024年02月16日
    浏览(57)
  • Python测试框架 Pytest —— mock使用(pytest-mock)

    安装:pip install pytest-mock 这里的mock和unittest的mock基本上都是一样的,唯一的区别在于pytest.mock需要导入mock对象的详细路径。 先将需要模拟的天气接口,以及需要模拟的场景的代码写好,然后在进行遵循pytest的用例规范进行书写关于mock的测试用例 通过上述代码,提供pytest中

    2024年02月09日
    浏览(44)
  • Python自动化测试:unittest与pytest框架

    在Python中, unittest 和 pytest 都是常用的自动化测试框架。它们提供了编写测试用例、测试套件和执行测试的强大功能。 1. unittest框架 unittest 是Python标准库的一部分,因此无需额外安装。它提供了丰富的断言方法,用于验证测试结果。 示例代码: python复制代码 import unittest c

    2024年02月20日
    浏览(53)
  • 【Python】案例介绍Pytest进行压力测试

    在现代Web应用程序中,性能是至关重要的。为了确保应用程序能够在高负载下正常运行,我们需要进行性能测试。 今天,应小伙伴的提问, 田辛老师来写一个Pytest进行压力测试的简单案例。 这个案例的测试网站我们就隐藏了,不过网站的基本情况是: 阿里云服务器:CentO

    2024年02月07日
    浏览(42)
  • Python基础介绍 —— 使用pytest进行测试!

    Pytest 是 Python 的一种单元测试框架,与 Python 自带的 unittest 测试框架类似,但是比 unittest 框架使用起来更简洁,效率更高。 Pytest 是 Python 的一种单元测试框架,与 Python 自带的 unittest 测试框架类似,但是比 unittest 框架使用起来更简洁,效率更高。 适合从简单的单元到复杂的

    2024年02月05日
    浏览(43)
  • 单元测试与unittest框架详解

    🍅 视频学习: 文末有免费的配套视频可观看 🍅  点击文末小卡片  ,免费获取软件测试全套资料,资料在手,薪资嘎嘎涨 1. 什么是单元测试? 单元测试是指,对软件中的最小可测试单元在与程序其他部分相隔离的情况下进行检查和验证的工作,这里的最小可测试单元通常

    2024年02月19日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包