pytest——01 入门

安装及入门

Python支持版本: Python 2.6,2.7,3.3,3.4,3.5,Jython,PyPy-2.3

支持的平台: Unix/Posix and Windows

PyPI包名: pytest

依赖项: py,colorama (Windows)

只需要4行代码即可创建一个简单的测试用例:

test_sample.py文件内容
def func(x):
    return x + 1

def test_answer():
    assert func(3) == 5

现在你可以执行一下这个测试用例:

$ pytest
=========================== test session starts ============================
platform linux -- Python 3.x.y,pytest-3.x.y,py-1.x.y,pluggy-0.x.y
rootdir: $REGENDOC_TMPDIR,inifile:
collected 1 item

test_sample.py F                                                     [100%]

================================= FAILURES =================================
_______________________________ test_answer ________________________________

    def test_answer():
>       assert func(3) == 5
E       assert 4 == 5
E        +  where 4 = func(3)

test_sample.py:5: AssertionError
========================= 1 failed in 0.12 seconds =========================

pytest命令会执行当前目录及子目录下所有 test_*.py*_test.py格式的文件。一般来说,用例需要遵循标准的测试发现规则。

使用 raise可以在相应代码的抛出的指定异常:

test_sysexit.py文件内容
import pytest
def f():
    raise SystemExit(1)

def test_mytest():
    with pytest.raises(SystemExit):
        f()
test_class.py文件内容
class TestClass(object):
    def test_one(self):
        x = "this"
        assert 'h' in x

    def test_two(self):
        x = "hello"
        assert hasattr(x,'check')

$ pytest -q test_class.py 运行该命令

Original: https://blog.csdn.net/zangba9624/article/details/114533356
Author: 迷茫小渣渣
Title: pytest——01 入门

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/776861/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 学习版pytest内核测试平台开发万字长文入门篇

    前言 2021年,测试平台如雨后春笋般冒了出来,我就是其中一员,写了一款pytest内核测试平台,在公司落地。分享出来后,有同学觉得挺不错,希望能开源,本着”公司代码不…

    Python 2023年9月12日
    034
  • 【自然语言处理】【ChatGPT系列】InstructGPT:遵循人类反馈指令来训练语言模型

    啊哦~你想找的内容离你而去了哦 内容不存在,可能为如下原因导致: ① 内容还在审核中 ② 内容以前存在,但是由于不符合新 的规定而被删除 ③ 内容地址错误 ④ 作者删除了内容。 可…

    Python 2023年10月24日
    043
  • python–pytest单元测试

    一、pytest特点 pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点: 1、简单灵活,容易上手2、支持参数化3、能够支持简单的单元测试和复杂的功能测试…

    Python 2023年9月14日
    039
  • Seed lab dns欺骗实验——dns local&dns remote

    文章目录 * – 1. 实验 – 2. 实验步骤及结果 – + 2.1 DNS _Local + * 2.1.1 环境搭建 * – …

    Python 2023年8月2日
    055
  • Python代码阅读(第29篇):使用初始化种子和迭代函数生成列表

    本文中的代码实现使用一个初始化种子和一个迭代函数通过嵌套函数迭代初始化种子,从而生成一个列表。 [En] The code implementation read in this …

    Python 2023年5月25日
    070
  • yolov5部署+微信小程序前端展示

    分为yolov5项目部署和微信小程序两部分,先介绍微信小程序前端展示+flask后端,之后介绍项目部署这部分。 一、先上效果图 点击选择图片,调用摄像头选择图片 2.选择图片之后,…

    Python 2023年8月15日
    051
  • 2021-10-25 Pytest-html Allure pytest_cov详解

    pytest_html 测试报告 import pytest """  使用pytest编写用例,必须遵守以下规则: (1)测试文件名必须以&quot…

    Python 2023年9月12日
    032
  • 数据分析总结

    引用: 了解数据 认识数据,知道数据的规模,取值情况,类型等 数据预处理: 为什么要进行数据预处理: 原始数据普遍存在问题,通常为脏数据,必须加以处理才能用于分析,一方面要提高数据…

    Python 2023年10月26日
    035
  • YOLOv7 | 模型结构与正负样本分配解析

    如有错误,恳请指出。 Yolov7的原作者就是Yolov4的原作者。看论文的时候看到比较乱,这里可能会比较杂乱的记录一下我觉得有点启发的东西。对于yolov7的代码,我也没有仔细的…

    Python 2023年9月15日
    037
  • Flink SQL 子图复用逻辑分析

    子图复用优化是为了找到SQL执行计划中重复的节点,将其复用,避免这部分重复计算的逻辑。先回顾SQL执行的主要流程 parser -> validate -> logic…

    Python 2023年10月22日
    022
  • Flask +Gunicorn+Nginx 在Linux进行部署

    1、写一个app,FlaskDemo 命名为 test.py 2、服务器配置,安装gunicorn 3、运行 3.1:直接运行(测试时使用) 3.2:gunicorn运行 3.3:…

    Python 2023年8月11日
    044
  • SNMP协议介绍

    概述 snmp全称 Simple Network Management Protocol,中文名为 简单网&amp…

    Python 2023年6月3日
    094
  • 【深度学习】(二)深度学习基础

    抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 Original: https://blo…

    Python 2023年8月2日
    055
  • 什么是BGP

    BGP概述 边界网关协议(BGP)是运行于 TCP协议上的一种自治系统的路由协议。 是一种外部路由协议。 AS概述 自治系统(AS),指的是同一个使用相同策略的设备的集合。 每个A…

    Python 2023年6月10日
    067
  • Pycharm远程连接服务器(实践笔记)

    Pycharm远程连接服务器(实践笔记) * – 1. 远程连接服务器 – 2.配置服务器上的环境 记录一下过程,防止自己隔一段时间又忘了… &…

    Python 2023年8月3日
    058
  • 如何使用zx编写shell脚本

    在这篇文章中,我们将学习谷歌的zx库提供了什么,以及我们如何使用它来用Node.js编写 shell脚本。然后,我们将学习如何通过构建一个命令行工具来使用zx的功能,帮助我们为新的…

    Python 2023年10月14日
    056
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球