pytest-切换环境(pytest-base-url)

pytest-切换环境(pytest-base-url)

当我们自动化代码写完成之后,期望能在不同的环境测试,这时候应该把 base_url 单独拿出来,能通过配置文件和支持命令行参数执行。

pytest-base-url 是 pytest 里面提供的一个管理 base-url 的一个非常实用的插件,参考文档https://pypi.org/project/pytest-base-url/

环境准备

先安装 pytest-base-url 插件

pip install pytest-base-url

使用案例

直接在用例里面使用 base_url参数 当成一个fixture使用

# test_demo.py

import requests

def test_example(base_url):

    assert 200 == requests.get(base_url).status_code

命令行执行的时候加上 --base-url 参数

pytest —base-url http://www.example.com

D:\soft\web_base>pytest --base-url http://www.example.com

=========== test session starts ==============

platform win32 -- Python 3.6.0, pytest-4.5.0, py-1.5.4, pluggy-0.13.1

baseurl: http://www.example.com

rootdir: D:\soft\web_base

plugins: allure-pytest-2.8.6, base-url-1.4.2

collected 1 item

test_demo.py .                              [100%]

pytest.ini 配置文件

也可以在 pytest.ini 配置文件中添加 base_url 地址

# pytest.ini文件内容

[pytest]

base_url = http://www.example.com

这样在命令行执行时候就可以不用带上 --base-url 参数

D:\soft\web_base>pytest

============== test session starts ================

platform win32 -- Python 3.6.0, pytest-4.5.0, py-1.5.4, pluggy-0.13.1

baseurl: http://www.example.com

rootdir: D:\soft\web_base, inifile: pytest.ini

plugins: allure-pytest-2.8.6,  base-url-1.4.2

collected 1 item

test_demo.py .          [100%]

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。