pytest入门

1.pytest安装
pip install -U pytest
2.验证安装
pytest --version
3.显示可用的内置函数参数
pytest --fixtures
4.pytest框架约束
  • 所有单元测试文件名需满足:test_*.py*_test.py格式
  • 测试类以Test开头,并且不能带有init方法
  • 测试类中可以包含一个或多个test_开头的函数

在执行pytest命令时,会自动从当前目录及子目录中寻找符合上述约束的测试函数来执行

5.pytest执行方式

简单示例

复制代码
import pytest
class TestSample():
    def test_01(self):
        print("========my first test_function========")
        
    @pytest.mark.abc
    def test_02(self):
        print("========my second test_function========")
        
    def test_03(self):
        print("========my third test_function========")
        
    def test_04(self):
        print("========my forth test_function,执行失败========")
        assert False
        
    def function_01(self):
        print("********没有以test开头,我不执行********")
        
    @pytest.mark.efg  
    def test_05(self):
        print("========my fifth test_function,执行失败========")
        assert False
复制代码

执行测试用例

  • pytest命令函数:通过main函数执行命令
复制代码
-v 展示每个测试函数的执行结果(详细信息)
-q 只显示整体测试结果(简要信息)
-s 展示测试函数中print()函数输出信息
-k 只执行包含关键字的用例
-m 只执行指定标记的用例
-x 出现失败用例则立即停止执行
-l 用例失败时打印相关局部变量
-c 从指定目录加载配置文件,而非自动查找配置文件
-lf 只执行上次失败的用例,若没有则执行全部用例
-ff 先执行完上次失败的再执行剩余的用例
-tb=style 用例失败时错误的详细程度(auto/long/short/line/native/no)
--maxfail=num 用例允许失败的最大次数,超出则立即停止执行
--collect-only 收集但不执行用例
--durations=num -vv 显示设定数值内,按照耗时时长降序打印结果,通常用于调优
-h,--help 帮助
通过main方法
if __name__ == '__main__': 
  pytest.main(["-sv", "file_name.py"]) # 通过main函数执行
复制代码

 

  • 执行成功用 . 表示
  • 执行失败用 F 表示

Pytest最原始的测试报告

–junit-xml=./report/xxx.xml

posted @   留小白  阅读(83)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示