pytest的基础入门

news2024/10/8 12:31:11

pytest判断用例的成功或者失败

pytest识别用例失败时会报AssertionError或者xxxError错误,当捕获异常时pytest无法识别到失败的用例

pytest的fixture夹具

pytest的参数化

#coding:utf-8
import pytest

from PythonProject.pytest_test.funcs.guess_point import get_the_number_of_points
test_datas = [6,9,10,4,5]
class TestGuessPoint:
    @classmethod
    def setup_class(cls):
        print("测试类当中,第一个执行用例之前,做的准备工作代码...")
    @classmethod
    def teardown_class(cls):
        print("测试类当中所有的用例执行完毕之后做的清理干工作...")
    # def setup_method(self):
    #     print("===每一个测试用例之前都要执行===")
    # def teardown_method(self):
    #     print("===每一个测试用例之后都要执行===")
    @pytest.mark.parametrize("case",test_datas)
    def test_guess(self,case):
        point = get_the_number_of_points()
        assert case == point

pytest和allure的结合

#coding:utf-8
import pytest
import allure
from PythonProject.pytest_test.funcs.log_fuc import login
all_datas=[
    {"user":"1234","passwd":"123456","check":"恭喜登录成功"},
    {"user":"None123","passwd":"False12345","check":"用户名或密码不正确"},
    {"user":"123","passwd":"123456","check":"用户名长度小于4"},
    {"user":"12345","passwd":"12345","check":"密码长度小于6"}
]
# @pytest.mark.usefixtures("class_fix")
class TestLogin:
    # def setup_method(self):
    #     print("每一个测试用例之前执行")
    # def teardown_method(self):
    #     print("每一个测试用例都要执行的后置")

    @pytest.mark.parametrize("casep",all_datas)
    @allure.description("登录模块测试,后端管理员用户角色---")
    @allure.issue("https://www.baidu.com","bug地址")
    @allure.testcase("https://www.baidu.com","xx平台测试用例地址")
    def test_login(self,casep):
        res = login(casep.get("user"),casep.get("passwd"))
        assert res == casep.get("check")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2196351.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

android 绘制流程

网上看了一些绘制相关的框架图,感觉有些不对,先记录下 主要是 surface 和framebuffer的关系,surface是用来管理数据内容并最终通过layer输出framebuffer的,因此应该是上下两层的管理,而不是平行的 二hwc合并内容&…

STM32 HAL库UART查询方式实例

本文中介绍USART编程涵盖了三种主要方法,详细介绍STM32F407微控制器结合HAL库,通过UART的查询方式来实现一个实用的密码验证程序。提示用户键入一个字符作为密码。只有当用户精准地输入字符6时,系统才会反馈“密码正确”的确认信息。反之&…

vscode 中显示 pnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本

vscode中运行pnpm报错 pnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本 解决办法如下 1、用 get-ExecutionPolicy 命令在vscode终端查询状态 如果返回的是 Restricted ,则说明是禁止的 2、用 set-ExecutionPolic…

从零开始构建:Python自定义脚本自动化你的日常任务

从零开始构建:Python自定义脚本自动化你的日常任务 Python 作为一种简洁且功能强大的编程语言,被广泛应用于各种自动化任务中。通过编写 Python 脚本,你可以轻松地将日常重复性工作自动化,例如文件操作、数据处理、网络爬虫、系统…

Mac 电脑设置键盘 Command键

Mac 电脑设置键盘 Command键 如果 mac 电脑连接的第三方键盘,有些键盘没有 command 按键,导致有些功能没有办法使用,比如你想复制粘贴发现也不可以。这个时候你需要设置一个按键为 command 按键。 比如上图中是把 Alt 键设置为 Command 键。 …

DHCP安装

步骤 1:安装DHCP服务器 在系统上安装DHCP服务。以下是安装命令: # 安装DHCP软件包 yum install dhcp步骤 2:配置DHCP服务器 安装完成后,需要配置DHCP服务器来绑定MAC地址和IP地址。 # 备份原始的DHCP配置文件 cp /etc/dhcp/dh…

华为 HCIP-Datacom H12-821 题库 (33)

🐣博客最下方微信公众号回复题库,领取题库和教学资源 🐤诚挚欢迎IT交流有兴趣的公众号回复交流群 🦘公众号会持续更新网络小知识😼 1.VLAN Pool 只要通过一个 SSID 就能够同时支持多个业务 VLAN,从而缩小广播域&#…

[含文档+PPT+源码等]精品大数据项目-基于python爬虫实现的大数据岗位的挖掘与分析

大数据项目——基于Python爬虫实现的大数据岗位的挖掘与分析,其背景主要源于以下几个方面: 一、大数据时代的来临 随着互联网、物联网、云计算等技术的快速发展,数据呈现出爆炸式增长。根据国际数据公司(IDC)的预测&…

送给fans的一封感谢信

引言 首先,十分感谢,这几个月里粉丝的点赞和关注。我同时手里也有很多资料。也像跟大家分享,促进大家一起进步。可以加我企鹅2101750384。或者绿泡泡qier3451841065 (加好友验证的时候,记得填“胡萝卜不甜”&#xff0…

241006-Gradio中Chatbot通过CSS自适应调整高度

A. 最终效果 B. 参考代码 import gradio as grCSS """ .contain { display: flex; flex-direction: column; } .gradio-container { height: 100vh !important; } #component-0 { height: 100%; } #chatbot { flex-grow: 1; overflow: auto;} #tab_item_4 { …

LeetCode-871 最低加油次数

重启力扣每日一题系列! 因为过去两个月里掉粉掉的好严重,我想大抵是因为更新的频率不如上半年了,如果我重启了每日一题系列那岂不是至少是每日一更☝🤓? 也不是每天都更,我有两不更,特难的就不…

LIN总线学习大全(基于CANoe和CAPL)

🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】🍅 玩转CANoe&…

Linux操作系统——概念扫盲I

目录 虚拟机概念刨析 在那之前,询问什么是虚拟化? 现在来看看什么是虚拟机 虚拟机有啥好的 小差:那JVM也叫Java Virtual Machine,有啥区别呢? Reference 虚拟机概念刨析 我们下面来简单聊聊虚拟机这个概念。对于…

一款开源Ai语音合成TTS工具:Fish Speech

在人工智能和语音技术日新月异的今天,Fish Speech项目以其卓越的性能和广泛的应用前景,成为了开源语音合成领域的一颗璀璨新星。 该项目由Fish Audio团队倾力打造,旨在为研究者、开发者和普通用户提供一个高质量、易用且功能强大的语音合成解…

Docker13-图形工具Portainer

零、文章目录 Docker13-图形工具Portainer 1、图形化管理工具 Docker 的图形化管理工具可以帮助用户更直观地管理 Docker 容器、镜像、网络和数据卷等。 选择哪个工具取决于您的具体需求,比如是否需要支持远程管理、是否需要集成 Kubernetes、是否偏好桌面应用或…

JVS·智能BI数据可视化图表:普通列表与分组列表配置全解析

使用场景 在可视化配置中,很多场景中需要图形和详细信息的融合展示,那么在图表中可以新增普通列表与分组列表的配置。如下图所示: 配置说明 1、新增组件:配置入口如下图所示,新增组件时,选择普通列表与分…

电脑屏幕录屏怎么弄?4个方法教会你录制

电脑屏幕录屏怎么弄?电脑屏幕录屏是一项非常实用的技能,它在学习、工作和娱乐中扮演着不可或缺的角色。通过录屏,我们可以轻松记录并分享操作步骤、会议内容、游戏过程等,极大地丰富了我们的表达和沟通方式。同时,录屏…

mysql 慢查询日志、设置单条数据最大 packet 插入大小指令

检查是否开启慢查询日志 show variables like "%slow%";slow_query_log为 ON 表示已经开启慢查询日志记录。 slow_query_log_file:慢查询日志文件存放地址 设置慢查询 sql 记录阈值 大于 1s 的 sql 都会被记录到日志文件里面。系统默认 10s。mysql 重…

3、Redis Stack扩展功能

文章目录 一、了解Redis产品二、申请RedisCloud实例三、Redis Stack体验1、RedisStack有哪些扩展?2、Redis JSON1、Redis JSON是什么2、Redis JSON有什么用3、Redis JSON的优势 3、Search And Query1、传统Scan搜索2、Search And Query搜索 4、Bloom Filter1、布隆过…

【Python_PySide6学习笔记(三十八)】基于QPushButton实现自定义的圆形按键指示灯类tQCircularButton

基于QPushButton实现自定义的圆形按键指示灯类tQCircularButton 基于QPushButton实现自定义的圆形按键指示灯类tQCircularButton前言正文1、Qt样式表1.1 Qt样式表1.2 样式属性 2、设置Qt样式表3、tQCircularButton类4、使用示例 基于QPushButton实现自定义的圆形按键指示灯类tQ…