news 2026/4/16 1:35:19

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/4/15 16:39:33

2025年可观测平台选型指南:头部厂商综合测评与推荐

在数字化转型与云原生架构普及的今天,企业系统日益复杂,传统监控手段已难以满足运维需求。可观测性作为保障业务连续性与用户体验的核心能力,已成为企业IT建设的重中之重。面对市场上众多的可观测平台,如何选择一款既符合技术趋势…

作者头像 李华
网站建设 2026/4/13 19:00:05

1小时搭建地区限制检测工具:快马平台实战

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 在快马平台上快速开发一个地区限制检测工具原型。功能包括:输入网址自动检测是否在用户地区可用,返回检测结果和解决方案建议。使用平台内置AI生成主要代码&…

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

Flutter全解析:从入门到实战的跨平台开发指南

Flutter全解析:从入门到实战的跨平台开发指南引言:为什么选择Flutter?在移动开发领域,开发者长期面临"选择原生开发还是跨平台"的困境。React Native、UniApp等方案虽解决了部分跨平台问题,但在性能一致性、…

作者头像 李华
网站建设 2026/4/10 11:12:39

Wan2.2-T2V-A14B实现蜜蜂采蜜与蜂巢建造过程模拟

Wan2.2-T2V-A14B 实现蜜蜂采蜜与蜂巢建造过程模拟 你有没有想过,一只蜜蜂从起飞、采蜜到回巢筑巢的全过程,可以仅靠一段文字就被完整“拍”出来?不是动画师一帧帧画的,也不是摄影师扛着微距镜头蹲守几天几夜——而是 AI 听完一句话…

作者头像 李华
网站建设 2026/4/12 0:57:25

面向异常检测的提示工程

异常值检测的提示工程 通过实际数据项目学习如何检测异常值,并利用AI改进流程。 介绍 给定数据集中的离群值代表极端值。它们极端到可以通过严重扭曲统计数据(比如均值)来毁掉你的分析。例如,在球员身高数据集中,12英尺即使是NBA球员也是个异常值,会显著拉高平均值。 我们…

作者头像 李华
网站建设 2026/4/15 6:03:09

机器学习--序言

机器学习:连接生物数据与生物规律的核心工具在高通量测序技术快速发展的今天,生物信息学已经进入了一个“数据驱动”的时代。无论是转录组、单细胞转录组、基因组、表观组,还是宏基因组和多组学整合分析,研究者面对的已不再是少量…

作者头像 李华