Pytest框架运行常用参数解析

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介: Pytest框架运行常用参数解析:-s:表示输出调试信息;-v:打印详细信息;-n:支持多线程或者分布式运行测试用例;–reruns NUM:失败用例重跑;-x:表示只要有一个测试用例报错则执行停止;–maxfail=2:表示出现2个用例报错则执行停止;-k:模糊匹配测试用例的部分字符串。。。
    1. -s:表示输出调试信息,用于显示测试函数中print()打印的信息。我们在用例中加上一句 print(driver.title),我们再运行一下我们的用例看看,调试信息输出
    2. -v:未加前只打印模块名,加v后--verbose打印类名、模块名、方法名,显示更详细的信息。
    3. -vs:这两个参数可以一起使用
    4. -n:支持多线程或者分布式运行测试用例(需安装:pytest-xdist插件)
    #命令行运行:
    pytest -vs test_login.py -n 2
    # 多线程执行测试用例,第1,3,5用例给线程0,第2,4用例给线程1
    # ----不管用例执行时间多长,比如设置1的等待时长为5秒,也是1,3分给线程0
    #主函数运行:
    pytest.main(['-vs','test_login.py', '-n=2'])
    #运行指定模块
    pytest.main(['-vs','test_0617.py'])
    1. image.gif
    2. –reruns NUM:失败用例重跑,跑几次(需安装:pytest-rerunfailures插件)
    #命令行运行:
    pytest -vs ./testcase/test_login.py reruns 2
    #主函数运行:
    pytest.main(['-vs','./testcase/test_login.py','--reruns=2'])
    1. image.gif
    2. -x:表示只要有一个测试用例报错,则执行停止
    3. –maxfail=2:表示出现2个用例报错,则执行停止。  
    #命令行运行
    pytest -vs ./testcase --maxfail 2
    #主函数运行
    pytest.main(['-vs', './testcase', '--maxfail=2'])
    1. image.gif
    2. -k:模糊匹配,测试用例的部分字符串,指定执行测试用例。  
    #命令行运行:
    pytest -vs ./testcase -k "ao"
    #主函数运行:
    pytest.main(['-vs', './testcase', '-k=ao'])
    1. image.gif
    2. -q:表示只显示整体测试结果。--quiet :极简结果显示,简化控制台的输出,可以看出输出信息和之前不添加-q信息不一样, 运行结果中两个..点代替了pass结果
    3. –html ./report/report.html:生成html格式的测试报告(需安装:pytest-html插件)image.gif编辑
    4. -m:--mark标记
    5. order:改变用例默认的执行顺序image.gif编辑
    6. skip:跳过用例

    #无条件跳过

    @pytest.mark.skip(reason="pan4太漂亮")

    #有条件跳过

    @pytest.mark.skipif(age>=18,reason='已长大成人')

    1. smoke:冒烟用例分布在各个模块,如何分组执行?冒烟用例、分模块、分接口和web执行。可以和 not、or、and 一起使用满足不同的条件筛选

    #执行test_login.py该文件下 不是 smoke标记的用例

    pytest -vs -m "not smoke" test_login.py

    #执行test_login.py该文件下的smoke 和 usermanage标记的用例

    pytest -vs -m "smoke or usermanage" test_login.py  

    #执行所有文件下的smoke 和 usermanage 和 productmange 标记的用例

    pytest -vs -m "smoke or usermanage or productmange"

    #pytest.ini配置文件中增加对应的字段:addopts = -vs,命令行可以不用使用-vs

    pytest -m "smoke or usermanage or productmange"

    Pytest框架测试用例规则和运行方式 参考:Pytest框架测试用例规则和运行方式_沫沫18S的博客-CSDN博客

    目录
    相关文章
    |
    测试技术 Python
    通过代码实例解析Pytest运行流程
    通过代码实例解析Pytest运行流程
    189 0
    |
    测试技术 C++ Python
    【pytest】pytest的几种运行方式,尤其最后一种调试很方便
    【pytest】pytest的几种运行方式,尤其最后一种调试很方便
    |
    测试技术 C++
    Pytest框架测试用例规则和运行方式
    Pytest框架测试用例规则:模块名:必须以 test_开头 或者 _test结尾;测试类:必须以 Test开头,并且不能有init方法;测试方法:必须以 test开头。Pytest框架测试运行模式:主函数模式、命令行模式、通过读取配置文件pytest.ini运行。。。
    262 0
    Pytest框架测试用例规则和运行方式
    |
    测试技术 C++ Python
    pytest 执行规则_基本用法_常用插件_常用断言_常用参数
    pytest 执行规则_基本用法_常用插件_常用断言_常用参数
    |
    测试技术 Python
    python接口自动化(二十三)--unittest断言——上(详解)
    在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是 fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert)。用 unittest 组件测试用例的时候,断言的方法还是很多的,下面介绍几种常用的断 言方法:assertEqual、assertIn、assertTrue。想了解更多可以点击 传送门 看一下最后的小结有大致介绍。
    283 0
    python接口自动化(二十三)--unittest断言——上(详解)
    |
    网络协议 jenkins 测试技术
    python接口自动化(二十五)--unittest断言——下(详解)
    本篇还是回归到我们最初始的话题,想必大家都忘记了,没关系看这里:传送门 没错最初的话题就是登录,由于博客园的登录机制改变了,本篇以我找到的开源免费的登录API为案例,结合 unittest 框架写 2 个用例。同样我们先来看一下接口文档。
    163 0
    python接口自动化(二十五)--unittest断言——下(详解)
    |
    测试技术 C++
    Pytest框架运行常用参数解析
    Pytest框架运行常用参数解析:-s:表示输出调试信息;-v:打印详细信息;-n:支持多线程或者分布式运行测试用例;–reruns NUM:失败用例重跑;-x:表示只要有一个测试用例报错则执行停止;–maxfail=2:表示出现2个用例报错则执行停止;-k:模糊匹配测试用例的部分字符串。。。
    199 0
    |
    测试技术 数据库 Python
    python接口自动化(二十二)--unittest执行顺序隐藏的坑(详解)
    大多数的初学者在使用 unittest 框架时候,不清楚用例的执行顺序到底是怎样的。对测试类里面的类和方法分不清楚,不知道什么时候执行,什么时候不执行。虽然或许通过代码实现了,也是稀里糊涂的一知半解,这样还好,好歹自己鼓 捣出了,但是时间和效率并不是很高,下次遇到还是老样子。那么本篇通过最简单案例来给给为小伙伴详细讲解、演示一下 unittest 执行顺序。
    267 0
    python接口自动化(二十二)--unittest执行顺序隐藏的坑(详解)
    |
    Web App开发 JSON 测试技术
    python接口自动化(二十四)--unittest断言——中(详解)
    上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言。这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京的天气,一个是查询 南京为例,你也可以查询别的城市的天气预报。
    167 0
    python接口自动化(二十四)--unittest断言——中(详解)