目录
测试需求
简单的一个接口场景:
接口场景:6个接口,分别为登录接口,新建项目接口,导入图片接口,图片识别接口,保存接口,退出登录;
实现思路
- 初始化数据:准备测试所需的数据,如用户名、密码、项目名称等,并存储在Excel文件中。
- 读取Excel数据:使用pandas或openpyxl库读取Excel文件中的测试数据。
- 编写核心脚本:封装发送HTTP请求、处理响应的逻辑。
- 编写测试用例:使用pytest编写针对每个接口的测试用例。
- 日志记录:使用logging库记录测试过程中的关键信息。
- pytest配置文件:设置pytest的相关配置,如插件、命令行参数等。
- 生成测试报告:使用pytest插件(如pytest-html)生成测试报告。
- 入口函数:编写一个入口脚本,用于启动整个测试流程。
完整框架
要实现基于Python、requests、excel、pytest的接口自动化测试,我们需要按照以下步骤和框架进行:
2.1 初始化数据 (test_data.xlsx)
| TestID | TestCase | URL | Method | Headers | Body | ExpectedStatus | ExpectedResponse |
|--------|----------------|--------------------|--------|-----------|--------------------------|----------------|------------------|
| 1 | Login | /api/client/login | POST | ... | {'username': 'user1', ...} | 200 | {...} |
| 2 | CreateProject| /api/projects | POST | ... | {'project_name': 'proj1'} | 201 | {...} |
| 3 | ImportImage | /api/projects/{id}/images | POST | ... | {'image_file': 'path/to/image'} | 201 | {...} |
| 4 | RecognizeImage| /api/projects/{id}/images/{image_id}/recognize | GET | ... | | 200 | {...} |
| 5 | Save | /api/projects/{id} | PUT | ... | {'updated_data': ...} | 200 | {...} |
| 6 | Logout | /api/client/logout | POST | | | 200 | {...} |
2.2 核心脚本 (api_client.py)
import requests
import logging
# 定义APIClient类,用于封装API交互逻辑
class APIClient:
def \_\_init\_\_(self, base_url, username, password):
# 初始化时接收API的基础URL、用户名和密码
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/dbe4ea13b75400e1567e7a655de098f8.png)
![img](https://img-blog.csdnimg.cn/img_convert/b57272064633fed377252ce2e82af258.png)
![img](https://img-blog.csdnimg.cn/img_convert/8c708472f264f049210aeee3e0997797.png)
![img](https://img-blog.csdnimg.cn/img_convert/a61f7007bcc43b5559665e79f11e1f0f.png)
![img](https://img-blog.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)
![img](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**
是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**
![](https://img-blog.csdnimg.cn/img_convert/ea9286f9d03cd3ec92de31ecc567d5c5.jpeg)