pytest-base-url库切换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
使用案例
配合pytest.ini 配置文件使用,在 pytest.ini 配置文件中添加 base_url 地址
# pytest.ini文件内容
[pytest]
base_url = https://www.baidu.com
测试代码:
# -*- coding:utf-8 -*-
import requests
import pytest
class TestBaseUrl:
def test_status(self, base_url):
status = requests.get(base_url).status_code
print("接口返回值为:{}".format(status))
def test_assert(self, base_url):
status = requests.get(base_url).status_code
if status == 200:
print("接口返回{},接口请求返回正常".format(status))
else:
print("接口返回{},接口请求返回异常".format(status))
if __name__ == '__main__':
pytest.main()
测试结果:
============================= test session starts =============================
platform win32 -- Python 3.7.4, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
baseurl: https://www.baidu.com
rootdir: D:\pyautoTest-master\pyautoTest-master, configfile: pytest.ini
plugins: base-url-1.4.2, html-3.1.1, metadata-1.11.0, parallel-0.1.1, rerunfailures-10.2collected 2 items
test_status.py [100%]
============================= 2 passed in 28.44s ==============================
.接口返回值为:200
.接口返回200,接口请求返回正常
test end!
Process finished with exit code 0