项目简介
本项目是运用Python的HttpRunner框架编写的测试用例集,用于对不同的API接口进行测试。HttpRunner是基于Python的HTTP测试框架,可编写HTTP接口测试用例,支持参数化、环境变量、断言等功能。项目包含多个针对特定API接口的测试用例,如登录、获取游戏信息、分享视频中心、视频点赞等。
项目的主要特性和功能
- 参数化测试支持:借助
pytest.mark.parametrize
装饰器,从CSV文件读取参数化数据,测试不同输入场景。 - 环境变量运用:使用环境变量传递参数,增强测试用例的通用性与灵活性。
- 断言验证机制:通过
.validate()
方法对响应进行断言验证,确保请求正确发送并返回预期结果。 - 请求与响应处理:采用
RunRequest
方法构造HTTP请求,通过.extract()
和.validate()
处理响应。 - 测试用例组织:以文件夹和Python类的方式组织测试用例,便于管理和维护。
- 其他特性:继承Requests全部特性;采用YAML/JSON描述测试场景;借助辅助函数实现复杂动态计算逻辑;支持完善的测试用例分层和hook机制;响应结果有丰富校验机制;基于HAR实现接口录制和用例生成;结合Locust实现分布式性能测试;执行方式可与持续集成工具结合;测试结果报告简洁清晰且有详尽统计和日志;可扩展性强,便于二次开发和Web平台化。
安装使用步骤
安装依赖
- 确保系统已安装Python和pip。
- 使用命令
pip install httprunner
安装HttpRunner框架,安装后使用hrun -V
查看是否安装成功,出现版本号即安装成功。 - 使用
pip install locust
安装locust。 - 若需生成allure报告,从http://allure.qatools.ru/下载,将
allure-2.8.0\bin
文件夹路径设置为系统环境变量path,以便在cmd任意目录执行。
新建项目
使用命令httprunner startproject name
新建项目。
运行测试用例
在与api
、testcases
同级目录下,若想运行某一个case,例如运行game_info
:
- pytest报告:使用命令hrun api\login_test.py --html=reports\report.html
,测试报告将出现在指定路径(路径和名称可更改)。
- allure报告:
1. 使用hrun api\login_test.py --alluredir=report
生成json结果文件,存放在指定目录(如当前目录下的report
文件夹)。
2. 运行allure generate report
将report
文件夹下的json文件渲染成网页结果,默认保存在当前文件夹下的allure-report
文件夹内。
3. 使用allure open allure-report
渲染报告并打开。
性能测试
前提是将相关参数改为实际账号(如“22993570”),避免取数超时报错。
1. 执行Locusts -f test_demo.py
或者locusts -f testcases
。
2. 在浏览器打开localhost:8086
,设置模拟的用户总数和每秒启动的虚拟用户数。
注意事项
项目测试用例涉及特定API接口,需确保系统环境已安装必要依赖,如requests
库(用于发送HTTP请求)和pymysql
库(部分测试用例用于数据库操作)。同时,某些测试用例可能包含敏感信息,应在安全环境中管理和存储。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】