zoukankan      html  css  js  c++  java
  • pytest---用例执行参数

      上一篇介绍了如何运行pytest代码,以及用例的一些执行规则,执行用例发现我们中间print输出的内容,结果没有给我们展示出来,那是因为pytest执行时,后面需要带上一些参数。

    参数内容

    我们可以在cmd中通过输入 pytest -h 或者pytest --help 来查看帮助内容

    奈何安静屏幕小,只写了一部分。

    安静这么多一点点的给大家介绍,有的安静也没有遇到过,在后续遇到后,给大家分享,安静先把常用的给大家列出来,并且举例说明

    安静简单的用一段代码进行展示,后面有需要补充的,安静会进行在代码中补充。

    import pytest
    class Test_01:
    
        def test_001(self):
            print('Test_01下的用例001')
            assert  1 == 1
    
        def test_002(self):
            print('Test_01下的用例002')
            assert  1 == 2
    
        def test_003(self):
            print('Test_01下的用例003')
            assert 3 == 3
    
    if __name__ == '__main__':
        pytest.main()

    pytest - s

    -s:执行用例,携带详细信息,比如打印的print内容

    通过cmd进行执行,发现已经详细内容展示出来了

    pytest -x

    -x:遇到错误的用例,立即退出执行,并输出结果

    从上图可以看到一共3条用例,执行了2条,其中执行到第2条的时候就已经程序就退出了。

    pytest -k

    -k:表示加需要执行的用例项,-k后面可以是测试函数名,也可以是类名,也可以是模块名,以及目录名称

    也可以通过加入not来不执行一些用例,这里的not要和用例名放在一起用引号

    pytest xxx.py

    ::类::用例:可以通过这种形式进行指定用例执行

    pytest -m

    -m:执行被标记的用例

    标记需要用到pytest中的装饰器  @pytest.mark.标记名称 

    import pytest
    class Test_01:
        
        @pytest.mark.anjing
        def test_001(self):
            print('Test_01下的用例001')
            assert  1 == 1
    
        def test_002(self):
            print('Test_01下的用例002')
            assert  1 == 2
            
        @pytest.mark.anjing
        def test_003(self):
            print('Test_01下的用例003')
            assert 3 == 3
    
    if __name__ == '__main__':
        pytest.main()

    pytest -v

    -v:表示查看详细的报告内容

    pytest -q

    -q:表示简则的测试报告,运行成功通过“.”表示,运行失败通过"F"表示

    pytest --collect-only

    --collect-only:表示把待执行的用例全部展示出来。

    pytest --maxfail=n

    --maxfail=n:其中n表示失败的次数,运行失败n次后,进行停止测试

    # coding:utf-8
    class Test:
        def test_01(self):
            print('这是用例01')
            assert 1 == 1
    
        def test_02(self):
            print('这是用例02')
            assert 1 == 2
    
        def test_03(self):
            print('这是用例03')
            assert 3 == 4
    
        def test_04(self):
            print('这是用例04')
            assert 4 == 4

    pytest --lf

    --lf:只执行上次失败的用例

    pytest --tb

    --tb=no:不展示用例失败的错误详情

    --tb=line:展示用例失败的代码具体行数。下图结果是在11行

     --tb=short:展示更加详细的错误信息

    pytest --duration

    --duration=N:表示把最耗时间的用例展示出来,N表示最慢的N个

    安静的代码运行都很快,把其中一个代码加上睡眠,从图中可以看出来,test_01文件中的test_03运行最慢。

    安静简单的列举了常用的几种,大家如果还想要了解可以查阅官方文档和进行pytest -h 查看详情

  • 相关阅读:
    (转)50道JavaScript基础面试题(附答案)
    (转)44 道 JavaScript 难题
    web本地存储(localStorage、sessionStorage)
    (转)在 vue-cli 脚手架中引用 jQuery、bootstrap 以及使用 sass、less 编写 css [vue-cli配置入门]
    (转)Vue 爬坑之路(四)—— 与 Vuex 的第一次接触
    vue 路由传参 params 与 query两种方式的区别
    (转)Vue 爬坑之路(三)—— 使用 vue-router 跳转页面
    【半原创】将js和css文件装入localStorage加速程序执行
    SqlAgent备份脚本
    读<css世界>笔记之img标签
  • 原文地址:https://www.cnblogs.com/qican/p/13969549.html
Copyright © 2011-2022 走看看