加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Pytest学习(八) - 自定义标记mark的使用

发布时间:2020-12-14 14:47:38 所属栏目:百科 来源:网络整理
导读:一、前言: pytest 支持自定义标记,自定义标记方便用例模块划分,也可以理解方便管理,配合标记参数 -m使用 二、示例代码 # -*- coding: utf-8 -*-# @Time : 2020/11/15 9:51# @Author : longrong.lang# @FileName: test_mark.py# @Software: PyCharm# @Cnb

一、前言:

pytest 支持自定义标记,自定义标记方便用例模块划分,也可以理解方便管理,配合标记参数 -m使用

二、示例代码

# -*- coding: utf-8 -*-
# @Time    : 2020/11/15 9:51
# @Author  : longrong.lang
# @FileName: test_mark.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/longronglang
import pytest


@pytest.mark.mylogin
def test_login():
    print('登录成功!')


@pytest.mark.query
def test_query():
    print('检索商品成功!')


@pytest.mark.addcart
def test_addcart():
    print('加入购物车')


if __name__ == '__main__':
    # pytest -s -m query test_mark.py
    pytest.main(['-s','-m query','test_mark.py'])

三、命令行执行

pytest -s -m query test_mark.py

可能看到这的同学会问了,为什么不用main方法执行,我代码里虽然写了,但是main执行就变成了了全部执行,这点我也很迷糊,为什么不行呢。有解决的同学,请在文末留言,我也学习下。
运行结果如下:

四、解决运行的warnings提示

创建一个pytest.ini文件,文件需要和运行的测试用例同一个目录,或在根目录下作用于全局。
加上自定义mark,内容如下:

[pytest]
markers =
    mylogin: this is mylogin page
    query: this is query page
    addcart: this is addcart page

五、如果不想标记query的用例

执行命令如下:

pytest -s -m "not query" test_mark.py

运行结果如下:

六、执行多个自定义标记的用例

执行命令如下:

pytest -s -m "query or mylogin" test_mark.py

运行结果如下:


系列参考文章:
https://www.cnblogs.com/poloyy/category/1690628.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读