pytest学习5-mark用例分类
2024-09-02 18:50:06
使用Mark标记测试用例
通过使用pytest.mark你可以轻松地在测试用例上设置元数据。例如, 一些常用的内置标记:
skip - 始终跳过该测试用例
skipif - 遇到特定情况跳过该测试用例
xfail - 遇到特定情况,产生一个“期望失败”输出
parametrize - 在同一个测试用例上运行多次调用(译者注: 参数化数据驱动)
创建自定义标记或将标记应用于整个测试类或模块很容易。 文档中包含有关标记的示例,详情可参阅[使用自定义标记。
注意:
标记只对测试用例有效,对fixtures方法无效。
使用mark功能自定义标记功能
在日常测试过程中,有很多测试用例,但只想执行其中的一部分用例,可以使用@pytest.mark.自定义标签功能满足
例如:
如下代码中,设计了5个用例,但只需要执行第一个和第四个用例,可以给第一个和第四个用例加上同样的标签webtest,然后执行pytest -m webtest命令。具体如下:
@pytest.mark.webtest
def test_mark_1():
print("这是第一个用例")
@pytest.mark.me
def test_mark_2():
print("这是第2个用例")
@pytest.mark.me
def test_mark_3():
print("这是第4个用例")
@pytest.mark.webtest
def test_mark_4():
print("这是第4个用例")
@pytest.mark.me
def test_mark_5():
print("这是第5个用例")
总结
我们可以使用@pytest.mark装饰器来给用例分类
运行的时候使用-m,m是mark的意思,来运行某个或某些分类
-m参数支持python表达式
用or实现多选的效果,例如pytest -m "webtest or me"
用not实现反选的效果,例如pytest -m "not me"
最新文章
- ural1238. Folding(记忆化)
- 慎用memset();
- LabVIEW设计模式系列——case结构模拟事件结构
- MySQL存储过程带in和out参数
- cuda8.0 /usr/bin/ld: cannot find -lGL
- js循环处理后台返回的json数组
- JS如何判断滚动条是否滚到底部
- 我敢说你不一定完全理解try 块,catch块,finally 块中return的执行顺序
- 钉钉授权第三方WEB网站扫码登录
- rabbitmq 配置集群镜像
- Flask--(一对多)模型渲染表单数据
- Eclipse上搭建Spring的开发环境
- RootConfig类
- eMMC应用教程:关于RPMB的应用【转】
- postman 的基础使用
- markdown简单常用语法
- Volume Shadow Copy Service(VSS)如何工作
- Android——碎片事务调用失败
- Java HttpClient Basic Credential 认证
- 获取客户端真实IP地址