news 2026/2/13 13:33:15

Pytest——》setup_module、teardown_module...前置、后置执行关系

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Pytest——》setup_module、teardown_module...前置、后置执行关系

1、前置、后置执行关系

# 方法一:通过函数实现 import pytest def testlogin(): print('通过函数实现用例') def testlogin1(): print("通过函数写用例:testlogin1") def testlogin2(): print("通过函数写用例:testlogin2") #模块执行前 def setup_module(): print('\n模块执行前,执行这个函数:setup_module()') #模块执行后 def teardown_module(): print('\n模块执行后,执行这个函数:teardown_module()') #函数执行前,对类里面的函数无效 def setup_function(): print('\n函数执行前,执行这个函数:setup_function()') #函数执行后,对类里面的函数无效 def teardown_function(): print('\n函数执行后,执行这个函数:teardown_function()') # 方法二:通过类实现 class TestLogin(object): @classmethod def testlogin3(cls): print('用类方法写用例') # @staticmethod def testlogin4(self): print('用实例方法写用例') def testlogin5(self): print('用实例方法写用例') # 类里面所有用例执行前执行一次 def setup_class(self): print('\n类里面用例执行前执行一次这个函数:setup_class()') # 类里面所有用例执行后执行一次 def teardown_class(self): print('\n类里面用例执行后执行一次这个函数:teardown_class()') #类中每个用例前执行 def setup_method(self): print("\n执行用例前,执行本函数:setup_method()") #类中每个用例后执行 def teardown_method(self): print("\n执行用例后,执行本函数teardown_method()")

运行结果:

D:\Study\pythonProject\venv\Scripts\python.exe D:/Study/pythonProject/Pythonpytest/runner.py ============================= test session starts ============================= platform win32 -- Python 3.7.9, pytest-7.4.4, pluggy-1.2.0 -- D:\Study\pythonProject\venv\Scripts\python.exe cachedir: .pytest_cache rootdir: D:\Study\pythonProject\Pythonpytest plugins: allure-pytest-2.15.2, rerunfailures-13.0, xdist-3.5.0 collecting ... collected 6 items case/test_login.py::testlogin 模块执行前,执行这个函数:setup_module() 函数执行前,执行这个函数:setup_function() 通过函数实现用例 PASSED 函数执行后,执行这个函数:teardown_function() case/test_login.py::testlogin1 函数执行前,执行这个函数:setup_function() 通过函数写用例:testlogin1 PASSED 函数执行后,执行这个函数:teardown_function() case/test_login.py::testlogin2 函数执行前,执行这个函数:setup_function() 通过函数写用例:testlogin2 PASSED 函数执行后,执行这个函数:teardown_function() case/test_login.py::TestLogin::testlogin3 类里面用例执行前执行一次这个函数:setup_class() 执行用例前,执行本函数:setup_method() 用类方法写用例 PASSED 执行用例后,执行本函数teardown_method() case/test_login.py::TestLogin::testlogin4 执行用例前,执行本函数:setup_method() 用实例方法写用例 PASSED 执行用例后,执行本函数teardown_method() case/test_login.py::TestLogin::testlogin5 执行用例前,执行本函数:setup_method() 用实例方法写用例 PASSED 执行用例后,执行本函数teardown_method() 类里面用例执行后执行一次这个函数:teardown_class() 模块执行后,执行这个函数:teardown_module() ============================== 6 passed in 0.02s ============================== Process finished with exit code 0
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/9 17:54:10

交通网络仿真软件:TransModeler_(1).TransModeler软件概述

TransModeler软件概述 1. TransModeler简介 TransModeler是一款强大的交通网络仿真软件,广泛应用于交通规划、设计和管理等领域。它能够模拟各种交通网络和交通流情况,帮助用户评估和优化交通系统的性能。TransModeler的主要功能包括交通网络建模、交通流…

作者头像 李华
网站建设 2026/2/7 23:24:13

5个必学的Conda命令实战案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个Jupyter Notebook教程,包含5个Conda命令的实战案例:1. 创建和管理Python虚拟环境;2. 安装特定版本的Python包;3. 导出和共享…

作者头像 李华
网站建设 2026/2/8 10:54:27

F2批量重命名工具终极指南:告别杂乱文件名的7个实战技巧

F2批量重命名工具终极指南:告别杂乱文件名的7个实战技巧 【免费下载链接】f2 F2 is a cross-platform command-line tool for batch renaming files and directories quickly and safely. Written in Go! 项目地址: https://gitcode.com/gh_mirrors/f21/f2 还…

作者头像 李华
网站建设 2026/2/5 10:01:38

5、高级网络分析工具:Wireshark 与 Ettercap 的进阶应用

高级网络分析工具:Wireshark 与 Ettercap 的进阶应用 1. 超越简单捕获的高级 Wireshark 应用 假设你已经对 Wireshark(曾用名 Ethereal)有了一定的使用经验。即使你刚接触渗透测试,在实验环境中也很难避开 Wireshark。如果你对这个出色的数据包分析工具还不熟悉,那你应该…

作者头像 李华
网站建设 2026/2/7 16:43:44

AZ-500云安全架构设计(从Agent部署到实时威胁检测)

第一章:MCP AZ-500 的云 Agent 安全防护在现代云安全架构中,Azure 的 MCP AZ-500 认证所涵盖的云 Agent 安全机制是保障虚拟机工作负载完整性的核心组件。云 Agent 作为运行在 Azure 虚拟机内部的轻量级代理程序,负责与 Azure 控制平面通信&a…

作者头像 李华
网站建设 2026/2/8 15:49:19

Winevdm:在64位Windows上运行16位应用的终极方案

Winevdm:在64位Windows上运行16位应用的终极方案 【免费下载链接】winevdm 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows 项目地址: https://gitcode.com/gh_mirrors/wi/winevdm 你是否遇到过这样的情况:一些经典的16位…

作者头像 李华