pytest 常用命令

本文介绍了pytest中如何使用自定义标记划分模块并筛选执行,包括通过 `-m` 参数选择标记、运行指定模块、类和用例,以及使用 `-k` 过滤用例名称。还详细讲解了`pytest.main()`的使用、pytest 插件如pytest-dependency的依赖管理,以及pytest-ordering插件控制用例执行顺序的方法。
摘要由CSDN通过智能技术生成

pytest支持自定义标记,可以将项目划分多个模块,然后按照指定模块执行

mark标记

demo test_m.py

只运行web标记的测,在cmd运行的时候加-m web,指定参数值web

pytest -v -m web/直接在编辑器使用["-s", "test_server.py", "-m=web]

如果不想执行标记web的用例,就使用pytest -v -m “not web”

-v 指定函数节点id

如想要运行某个.py模块下类的一个用例,如TestClass里面的test_method用例,每个test_开头的用例,函数的明细就是用例的节点id,指定节点id运行用-v 参数

pytest -v test_m.py::TestClass::test_method

也可以运行整个class

>pytest -v test_m.py::TestClass

也可以运行多个节点,多个节点之间用空格隔开

pytest -v test_server.py::TestClass test_server.py::test_send_http

-k匹配用例名称

可以使用-k命令运行指定在匹配用例名称的表达式

pytest -v -k http

也可以排除某些用例

pytest -k “not send_http” -v

同时也可以选择匹配多个

pytest -k “http or quick” -v

pytest.main()的使用

pytest在运行用例的时候,一般会使用命令行去执行,但也可以像unittest框架一样,在该项目的根目录下写一个run_all.py的文件,运行该文件即可

pytest.main()

pytest.main(args,plugins) args:传一个list对象,list里面是多个命令行的参数 plugins 传一个list对象,在list里面初始化的时候注册的插件

如果不带任何参数,那么在执行的效果与cms直接运行pytest命令一样,默认运行当前目录及子目录的所有文件夹的测试用例

带参数运行

在运行的时候&

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值