• pytest扫盲17--自定义命令行参数


    当存在多套测试环境时,通过自定义命令行参数,快速切换host

    查看pytest系统命令行参数:pytest -h

    1、编辑 conftest.py:

    import os
    import pytest
    def pytest_addoption(parser):
        '''增加命令行参数 --cmdhost'''
        parser.addoption(
            "--cmdhost",
            action="store",
            # default: 默认值,命令行没有指定host时,默认用该参数值
            default="http://xx.xx.xx.xx:xxxx",
            help="test case project host address"
        )
    
    @pytest.fixture(scope="session", autouse=True)  # autouse=True自动执行该前置操作
    def host(request):
        '''获取命令行参数,给到环境变量'''
        os.environ["host"] = request.config.getoption("--cmdhost")
        print("当前用例运行测试环境:%s"%os.environ["host"])

    pytest -h 查看到增加了如下自定义参数

    2、执行测试代码,不带host

    pytest.main(['-s', '-q', 'test_demo_16_relevance.py'])
    E:personalpython38python.exe E:/personal/GitWorkSpace/pytest_basic/main.py
    test_demo_16_relevance.py::TestLogin::test_1[login0]
    test_demo_16_relevance.py::TestLogin::test_2[login0]
    test_demo_16_relevance.py::TestLogin::test_3
    当前用例运行测试环境:http://xx.xx.xx.xx:xxxx
    
    正在操作登录,账号:admin, 密码:123456
    登录成功
    F
    正在操作登录,账号:admin, 密码:123456
    登录成功
    ..
    ================================== FAILURES ===================================

    3、切换host

    pytest.main(['-s', '-q', '--cmdhost=http://www.xxx.xxx', 'test_demo_16_relevance.py'])
    E:personalpython38python.exe E:/personal/GitWorkSpace/pytest_basic/main.py
    test_demo_16_relevance.py::TestLogin::test_1[login0]
    test_demo_16_relevance.py::TestLogin::test_2[login0]
    test_demo_16_relevance.py::TestLogin::test_3
    当前用例运行测试环境:http://www.xxx.xxx
    
    正在操作登录,账号:admin, 密码:123456
    登录成功
    F
    正在操作登录,账号:admin, 密码:123456
    登录成功
    ..
    ================================== FAILURES ===================================
  • 相关阅读:
    解析iscroll-小demo
    iscroll的理解
    jquery代码小片段
    jQuery的性能优化
    事件代理
    数组方式使用jQuery对象
    循环时的dom操作
    JavaScript中的ajax(二)
    jQuery与ajax的应用(一)
    表单应用
  • 原文地址:https://www.cnblogs.com/xiaohuboke/p/13564157.html
Copyright © 2020-2023  润新知