Postman接口自动化测试:从入门到实践
创作时间:
作者:
@小白创作中心
Postman接口自动化测试:从入门到实践
引用
CSDN
1.
https://blog.csdn.net/m0_60889254/article/details/143308857
前言
在软件开发过程中,接口测试是确保软件各组件之间正确交互的关键环节。Postman作为一款强大的API开发工具,不仅支持接口请求的发送与调试,还提供了丰富的自动化测试功能,使得接口自动化测试变得更加高效和便捷。本文将从Postman的基础使用开始,逐步引导你如何利用Postman进行接口自动化测试。
为什么需要自动化测试?
- 可以替代大量的手工机械重复性操作,测试工程师可以把更多的时间花在用例设计和新功能的测试上
- 可以大幅度提升回归测试的效率,非常适合敏捷开发过程
- 可以更好地利用无人值守时间,去更频繁地执行测试
- 可以高效实现某些手工测试无法完成或代价巨大的测试类型,例如:7*24小时持续运行的系统稳定性测试和高并发场景的压力测试
- 可以保证每次执行的操作具有一致性和可重复性,不会受人的感情因素影响。
Postman接口自动化流程
一、安装
- 安装与启动
- 访问Postman官网下载并安装Postman。
- 启动Postman,你会看到一个简洁的界面,包含请求构建器、响应视图、侧边栏等多个部分。
- 创建请求
- 在Postman中,你可以通过点击左上角的“New”按钮来创建一个新的请求或集合。
- 在请求构建器中,你可以设置请求的方法(GET、POST等)、URL、Headers、Body等。
- 点击“Send”发送请求,并查看响应结果。
二、构建接口测试集合
为了进行自动化测试,我们需要将相关的接口请求组织在一个集合(Collection)中。
- 创建集合
- 点击侧边栏的“Collections”选项卡,然后点击“+ New”按钮创建一个新的集合。
- 为你的集合命名,并添加必要的描述。
- 添加请求到集合
- 在请求构建器中完成请求的设置后,点击“Save”按钮。
- 选择你之前创建的集合,将请求保存到该集合中。
三、编写测试用例
Postman提供了“Tests”标签页,允许你编写JavaScript脚本来对响应进行断言,从而实现测试用例的编写。
- 编写测试脚本
在请求的“Tests”标签页中,你可以编写JavaScript脚本来对响应的状态码、响应体等进行检查。
例如,检查HTTP状态码是否为200:
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
检查响应体中是否包含特定内容:
pm.test("Body contains content", function () {
pm.expect(pm.response.text()).to.include("expected content");
});
四、运行集合测试
Postman允许你一次性运行集合中的所有请求及其测试脚本。
- 使用Runner运行测试
- 点击集合旁边的“Run”按钮,打开Runner界面。
- 选择你想要运行的集合,设置迭代次数(如果需要的话),然后点击“Run [Collection Name]”开始测试。
- Runner会依次执行集合中的每个请求,并在界面上展示测试结果。
实践演练
新建集合
新建接口
填写自动化测试脚本
例如,我需要测试几点
http状态码200
返回的json的code码是0
接口返回时间不小于1000毫秒,脚本如下
//查看httpCode码
tests["接口状态码200"] = responseCode.code === 200;
//判断请求时间
tests["返回时间小于1000毫秒"] = responseTime < 1000;
//返回body转json
var data = JSON.parse(responseBody);
//检查json数据
tests['code码必须为0']= data.code==0
运行测试结果如下:
批量录入所有接口
然后接下我要对所有的接口进行这样的测试,把这些接口都录入,如下执行自动化测试
点击集合的Run按钮
弹出如下界面,可以填写相应的参数,这里我用默认的
点击Run,执行结果如下
可以看到,我们测试了32个接口,其中25个通过,7个失败!
另外Postman还推出了命令行版本Newman,可以配合Jenkins做接口自动化测试和持续集成。
安装Newman
你可以通过npm安装Newman:npm install -g newman使用Newman运行测试
将Postman集合导出为JSON文件。
在命令行中使用Newman运行该JSON文件:newman run your_collection.json
热门推荐
游戏消费解析,从氪金热潮看玩家心理与市场趋势
长安大学直罗镇战役纪念馆之旅:传承红色基因,砥砺前行
过敏性咽喉炎的比较好的治疗方法
小孩咳嗽可以蒸梨吃吗?作用机制、适用情况及注意事项全解析
文竹的养殖技巧和注意事项
如何评估信息来源的真实性
忘记手机密码怎么解开不恢复出厂设置?
农药稀释的科学之道:确保安全与效能的关键步骤
医生提醒:心梗早期不是胸痛,而是身体出现4种异常,一定要注意
工业机器人维修与运用的核心技能
在香港成功开户的秘诀:详解华美银行国内开户流程
长春有轨电车:诗意在城市中穿行
UG导出什么格式给编程
怎样快速去水肿脸部
上海骨科康复医院:跑者的足底筋膜炎物理疗法
钢材价格下跌的原因和影响是什么?这种价格变化如何反映市场供需关系?
通过饮食辅助降血压?可行!
医保政策解读怎么影响个人医疗费用?
主食吃多少,和寿命长短有关?
青团香里话清明
怎样按摩能够补气血呢
集装箱装载率优化指南:如何装下更多纸箱?
货运出口集装箱装柜指南
2024年测序仪新动态:多组学整合与纳米孔技术崛起
被人打伤,报案后伤情鉴定流程怎么走?要等多久?
发动机舱漏水怎么办?详解原因与解决方案
15Kg级无人机降落伞系统技术详解
食材保鲜秘籍:科学储存法让食物持久新鲜
如何确定封面设计的主题和风格?
楚虽三户、亡秦必楚,“三户”说的是哪三户?讲出来你可能不信