Pytest框架运行常用参数解析

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: Pytest框架运行常用参数解析:-s:表示输出调试信息;-v:打印详细信息;-n:支持多线程或者分布式运行测试用例;–reruns NUM:失败用例重跑;-x:表示只要有一个测试用例报错则执行停止;–maxfail=2:表示出现2个用例报错则执行停止;-k:模糊匹配测试用例的部分字符串。。。

     -s:表示输出调试信息,用于显示测试函数中print()打印的信息。我们在用例中加上一句 print(driver.title),我们再运行一下我们的用例看看,调试信息输出

  1. -v:未加前只打印模块名,加v后--verbose打印类名、模块名、方法名,显示更详细的信息。
  2. -vs:这两个参数可以一起使用
  3. -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. -q:表示只显示整体测试结果。--quiet :极简结果显示,简化控制台的输出,可以看出输出信息和之前不添加-q信息不一样, 运行结果中两个..点代替了pass结果
  2. –html ./report/report.html:生成html格式的测试报告(需安装:pytest-html插件)image.gif
  3. -m:--mark标记
  4. order:改变用例默认的执行顺序image.gif
  5. skip:跳过用例

#无条件跳过

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

#有条件跳过

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

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博客


目录
相关文章
|
8天前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
46 3
|
1天前
|
存储 Java
深入探讨了Java集合框架中的HashSet和TreeSet,解析了两者在元素存储上的无序与有序特性。
【10月更文挑战第16天】本文深入探讨了Java集合框架中的HashSet和TreeSet,解析了两者在元素存储上的无序与有序特性。HashSet基于哈希表实现,添加元素时根据哈希值分布,遍历时顺序不可预测;而TreeSet利用红黑树结构,按自然顺序或自定义顺序存储元素,确保遍历时有序输出。文章还提供了示例代码,帮助读者更好地理解这两种集合类型的使用场景和内部机制。
9 3
|
15天前
|
Web App开发 IDE 测试技术
自动化测试的利器:Selenium 框架深度解析
【10月更文挑战第2天】在软件开发的海洋中,自动化测试犹如一艘救生艇,让质量保证的过程更加高效与精准。本文将深入探索Selenium这一强大的自动化测试框架,从其架构到实际应用,带领读者领略自动化测试的魅力和力量。通过直观的示例和清晰的步骤,我们将一起学习如何利用Selenium来提升软件测试的效率和覆盖率。
|
15天前
|
前端开发 Java 应用服务中间件
21张图解析Tomcat运行原理与架构全貌
【10月更文挑战第2天】本文通过21张图详细解析了Tomcat的运行原理与架构。Tomcat作为Java Web开发中最流行的Web服务器之一,其架构设计精妙。文章首先介绍了Tomcat的基本组件:Connector(连接器)负责网络通信,Container(容器)处理业务逻辑。连接器内部包括EndPoint、Processor和Adapter等组件,分别处理通信、协议解析和请求封装。容器采用多级结构(Engine、Host、Context、Wrapper),并通过Mapper组件进行请求路由。文章还探讨了Tomcat的生命周期管理、启动与停止机制,并通过源码分析展示了请求处理流程。
|
14天前
|
人工智能 缓存 Java
深入解析Spring AI框架:在Java应用中实现智能化交互的关键
【10月更文挑战第12天】Spring AI 是 Spring 框架家族的新成员,旨在满足 Java 应用程序对人工智能集成的需求。它支持自然语言处理、图像识别等多种 AI 技术,并提供与云服务(如 OpenAI、Azure Cognitive Services)及本地模型的无缝集成。通过简单的配置和编码,开发者可轻松实现 AI 功能,同时应对模型切换、数据安全及性能优化等挑战。
|
5天前
|
分布式计算 Java 应用服务中间件
NettyIO框架的深度技术解析与实战
【10月更文挑战第13天】Netty是一个异步事件驱动的网络应用程序框架,由JBOSS提供,现已成为Github上的独立项目。
16 0
|
16天前
|
JSON 应用服务中间件 API
使用 Gin 框架实现文件上传:机制与深入解析
使用 Gin 框架实现文件上传:机制与深入解析
|
16天前
|
存储 缓存 并行计算
yolov5的train.py的参数信息解析
这篇文章解析了YOLOv5的`train.py`脚本中的参数信息,详细介绍了每个参数的功能和默认值,包括权重路径、模型配置、数据源、超参数、训练轮数、批量大小、图像尺寸、训练选项、设备选择、优化器设置等,以便用户可以根据需要自定义训练过程。
20 0
|
10天前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
26 0
|
10天前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
24 0

推荐镜像

更多