python+requests+pytest 编写自动化测试框架
时间: 2023-10-02 16:11:46 浏览: 102
基于Python+Pytest+Requests+Allure+Yaml+Json实现全链路接口自动化测试
1. 确定测试用例
首先,需要确定测试用例,即要测试的功能和场景。可以根据产品需求文档或者功能列表来确定测试用例,尽量覆盖所有的功能和场景。
2. 安装pytest和requests
pytest是Python的一个单元测试框架,可以方便地进行测试用例的编写和执行。requests是Python的一个HTTP库,可以方便地进行网络请求。
可以使用pip命令来安装这两个库:
pip install pytest
pip install requests
3. 编写测试用例
测试用例应该按照功能和场景分组,每个测试用例应该有一个明确的描述和预期结果。可以使用pytest的装饰器来标记测试用例:
import pytest
import requests
@pytest.mark.parametrize('url, expected', [
('http://example.com', 200),
('http://example.com/notfound', 404),
])
def test_requests(url, expected):
r = requests.get(url)
assert r.status_code == expected
这个测试用例中,使用了pytest的parametrize装饰器来指定不同的URL和期望的HTTP响应码。然后,使用requests库来发送HTTP请求,并使用assert语句来判断响应码是否符合预期。
4. 运行测试用例
使用pytest命令来运行测试用例:
pytest test_requests.py
如果所有测试用例都通过,那么pytest会输出一个“PASSED”字样。如果有测试用例失败,pytest会输出一个“FAILED”字样,并显示具体的错误信息。
5. 生成测试报告
可以使用pytest-html插件来生成测试报告:
pip install pytest-html
pytest --html=report.html
这样就可以生成一个HTML格式的测试报告,并保存到report.html文件中。测试报告会包含所有测试用例的运行结果和错误信息。可以将测试报告发送给开发人员或者项目经理,以便于跟踪测试进度和问题。
阅读全文