从 0 到 1 搭建 Pytest 接口自动化测试项目
1.创建项目目录
mkdir Pytest-API-Testing-Demo
2.项目初始化
// 进入项目文件夹下
cd Pytest-API-Testing-Demo
// 创建项目 python 项目虚拟环境
python -m venv .env
// 启用项目 python 项目虚拟环境
source .env/bin/activate
3.安装项目依赖
// 安装 requests 包
pip install requests
// 安装pytest 包
pip install pytest
// 将项目依赖项保存到 requirements.txt 文件中
pip freeze > requirements.txt
4.新建测试文件及测试用例
// 新建测试文件夹
mkdir tests
// 新建测试用例文件
cd tests
touch test_demo.py
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】
5.编写测试用例
测试接口可参考项目中 demoAPI.md 文件
import requests
class TestPytestDemo:
def test_get_demo(self):
base_url = "https://jsonplaceholder.typicode.com"
# 发起请求
response = requests.get(f"{base_url}/posts/1")
# 断言
assert response.status_code == 200
assert response.json()['userId'] == 1
assert response.json()['id'] == 1
def test_post_demo(self):
base_url = "https://jsonplaceholder.typicode.com"
requests_data = {
"title": "foo",
"body": "bar",
"userId": 1
}
# 发起请求
response = requests.post(f"{base_url}/posts", requests_data)
# 断言
assert response.status_code == 201
print(response.json())
assert response.json()['userId'] == '1'
assert response.json()['id'] == 101
6.运行测试用例
pytest
7.查看测试报告
CsoB4y
8.接入 pytest-html-reporter 测试报告
https://github.com/prashanth-sams/pytest-html-reporter
安装 pytest-html-reporter 依赖
pip install pytest-html-reporter
配置测试报告参数
-
项目根目录下新建 pytest.ini 文件
-
添加以下内容
[pytest]
addopts = -vs -rf --html-report=./report --title='PYTEST REPORT' --self-contained-html
运行测试用例
pytest
查看测试报告
报告在项目根目录下的 report 目录下,使用浏览器打开 pytest_html_report.html 文件即可查看
8JdxbA
下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
最后: 可以在公众号:自动化测试老司机 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!