当前位置: 首页 > news >正文

pytest入门一:用例的执行范围

从一个或多个目录开始查找,可以在命令行指定文件名或目录名。如果未指定,则使用当前目录。

  • 测试文件以 test_ 开头或以 _test 结尾

  • 测试类以 Test 开头 ,并且不能带有 init 方法

  • 测试函数以 test_ 开头

  • 断言使用基本的 assert 即可

  • 所有的包 pakage 必须要有__init__.py 文件

# test_2.py
import sysimport pytestdef add(x,y):return x + y@pytest.mark.add
def test_add():assert add(1,2) == 3assert add(2,3) == 5assert add(10,2) == 12def is_win32():return True if sys.platform == 'win32' else Falseclass TestDemo:def test_demo(self):x = "hello world"print(f"{x} python")assert 'h' in x@pytest.mark.skipif(sys.platform == 'win32',reason='win32跳过用例')def test_demo3(self):x = "hello world"print(f"{x} python")assert 'h' in xonly_win32 = pytest.mark.skipif(is_win32(),reason='win32跳过用例')@only_win32def test_demo4(self):x = "hello world"print(f"{x} python")assert 'h' in x@pytest.mark.skip("变更")def test_demo2(self):x = 'hello'assert hasattr(x,"check")@pytest.mark.xfail(reason="bug待修复")def test_demo5(self):x = 'hello'assert hasattr(x, "check")if __name__ == "__main__":pytest.main(['-v', '-s'])

1)执行全部

if name == "__main__": pytest.main(['-v', '-s'])

2)执行某个文件 

if name == "__main__":
    pytest.main(['-v', '-s','test_2.py'])

 3)执行某个类

if name == "__main__":
    pytest.main(['-v', '-s','test_2.py::TestDemo'])

4) 执行某个方法

if name == "__main__":
    pytest.main(['-v', '-s','test_2.py::TestDemo::test_demo'])

5) mark 打标执行  pytest.mark.add

6) skip忽略执行  @pytest.mark.skip("变更")

7) 条件忽略skipif    @pytest.mark.skipif(sys.platform == 'win32',reason='win32跳过用例')

8)xfail:预期失败 @pytest.mark.xfail

真失败会显示xfailed,成功会显示xpassed,应用场景:已知bug标注,后续验证修复

http://www.lryc.cn/news/503281.html

相关文章:

  • 22. 正则表达式
  • Flink Python作业快速入门
  • 自定义函数库
  • FreeRTOS例程2-任务挂起恢复与使用中断遇到的坑!
  • L23.【LeetCode笔记】验证回文串(剖析几种解法)
  • FPGA 17 ,FPGA 与 SR-IOV虚拟化技术,高性能计算与虚拟化技术的结合(FPGA 与 SR-IOV 和 PCI,高性能计算与虚拟化的完美融合)
  • 解决navicat 导出excel数字为科学计数法问题
  • [Unity] AppLovin Max接入Native 广告 Android篇
  • Source Insight 4.0的安装
  • 远程调试软件对比与使用推荐
  • 鸿蒙项目云捐助第二讲鸿蒙图文互动基本程序实现
  • 求解球面的一组正交标架
  • php.ini 文件上传/执行时间/部分配置新手教程
  • 【Leetcode Top 100】102. 二叉树的层序遍历
  • 【C++笔记】AVL树
  • 【竞技宝】LOL:JDG官宣yagao离队
  • 双目摄像头标定方法
  • 相差不超过k的最多数,最长公共子序列(一),排序子序列,体操队形,青蛙过河
  • 【自然语言处理与大模型】使用llama.cpp将HF格式大模型转换为GGUF格式
  • MongoDB存储照片和文件存储照片的区别在那里?
  • 协变量的概念
  • 【[LeetCode每日一题】Leetcode 1768.交替合并字符串
  • SRT协议学习
  • 南昌大学《2024年837自动控制原理真题》 (完整版)
  • ASP.NET Core 应用程序的启动与配置:Program.cs 文件的全面解析
  • 2020-12-02 数字过滤
  • 长短期记忆神经网络(LSTM)介绍
  • 数据结构 ——二叉树转广义表
  • chattts生成的音频与字幕修改完善,每段字幕对应不同颜色的视频,准备下一步插入视频。
  • 数据结构开始——时间复杂度和空间复杂度知识点笔记总结