zoukankan      html  css  js  c++  java
  • python-pytest学习(十一)-自定义标记mark

    一、前言

      pytest可以支持自定义标记,自定义标记可以把一个web项目划分多个模块,让指定模块模块名称执行。APP自动化的时候,如果想android和ios共用一套代码时,也可以使用标记功能,标明哪些是ios用例,哪些是android用例,运行代码时候指定mark名称运行就可以。

    二、mark标记

      以下用例,标记test_send_http()为webtest

    import pytest
    
    @pytest.mark.webtest
    def test_send_http():
        pass  # perform some webtest test for your app
    
    def test_something_quick():
        pass
    
    def test_another():
        pass
    
    class TestClass:
        def test_method(self):
            pass
    
    if __name__ == "__main__":
        pytest.main(["-s","test_server.py","-m=webtest"])

      只运行用webtest标记的测试,cmd运行的时候,加个-m参数,指定参数值webtest

    pytest -v -m webtest

      如果不想执行标记webtest的用例,那就用“not webtest”

    pytest -v -m "not webtest"
    import pytest
    
    @pytest.mark.webtest
    def test_send_http():
        pass  # perform some webtest test for your app
    
    def test_something_quick():
        pass
    
    def test_another():
        pass
    
    class TestClass:
        def test_method(self):
            pass
    
    if __name__ == "__main__":
        pytest.main(["-s","test_server.py","-m='not webtest'"])

    三、-v 指定的函数节点id

      如果想指定运行某个.py模块下,类里面的一个用例,如:TestClass里面testmethod用例

      每个test开头(或_test结尾)的用例,函数(或方法)的名称就是用例的节点id,指定节点id运用-v参数。

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

      当然也能现在运行整个class

    pytest -v test_server.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

      也可以同时选择匹配“http”和“quick”

    pytest -k "http or quick" -v

    参考文章:https://www.jianshu.com/p/e87062fab197

  • 相关阅读:
    实验4-2-4 换硬币 (20分)
    实验4-1-4 求整数的位数及各位数字之和 (15分)
    实验4-1-10 兔子繁衍问题 (15分)
    实验4-1-7 特殊a串数列求和 (20分)
    实验4-1-3 找出最小值 (20分)
    实验4-1-2 求奇数和 (15分)
    实验4-1-1 最大公约数和最小公倍数 (15分)emmm辗转相除法
    实验3-10 高速公路超速处罚 (15分)
    1.使用Lucene开发自己的搜索引擎--倒排索引基础知识
    办公自动化项目从无到有-第三篇系统管理模块
  • 原文地址:https://www.cnblogs.com/zhaocbbb/p/12842765.html
Copyright © 2011-2022 走看看