Postman做接口自动化测试-入门篇

本帖已被设为精华帖!,

Postman大更新很多次了,原内容过时咯,把大部分编辑掉避免误导,只保留链接
以下全是我编的,编不下去就删掉咯……Postman做接口自动化测试-入门篇


https://www.getpostman.com

可能是目前最好用的web接口调试工具

接口自动化测试选型参考

  • 门槛低
    • 基本功能很多人会,很多前后端开发、测试习惯用它调接口
    • 脚本语言是 JavaScript ,几乎人人都会一点,只需要学它的几个API
    • 自带各种代码模板
    • 跨平台,有 Mac 、Win、Linux桌面版
  • 免费版功能够用,能满足多数互联网公司的使用场景
    • HTTP(S) 协议、发送form/JSON、接收 JSON/text/HTML、常用加密/编码
    • 有命令行版(Newman),方便放上服务器,通过Jenkins做持续集成
    • 用例、环境变量支持导入导出,可以交给Git做版本管理
    • 支持抓包、保存历史记录、多终端同步用例
    • 支持读取数据文件(JSON/CSV)
    • 支持JSON Schema校验
  • 有亮点
    • 桌面版基于Electron,底层是V8引擎,可以用 ES6 语法写JS
    • 如果项目用 Swagger 生成API文档,JSON文件可以直接导入Postman来生成用例

局限

毕竟调试小工具出身,算不上成熟的自动化测试框架,又有GUI的拖累,有些东西绕个圈能实现但很丑,如:

  • 封装公共函数
  • 引入第三方/自己写的JS库
  • 用例间跳转、重试

有些该有的功能目前还不支持,如:

  • 通过URL搜索用例
  • 通过命令行传参修改环境变量

另外Postman运行在沙盒里,Newman虽然基于Node.js,但一套脚本2边共用决定了功能不能差太远,因此无法做到:

  • 文件相关操作
  • 读写数据库
  • 使用非HTTP协议

如果要深入使用,团队里最好有人会Node.js,把Newman封装一下


安装

Mac

如果装了Homebrew和Cask:

brew cask postman

否则:

https://www.getpostman.com/apps

推荐 macOS/Windows/Linux 桌面app

不推荐现在还用Chrome app,除了下载要***,浏览器的沙盒有更多限制


基本使用

官方文档

教程

不管中文还是英文的教程都比较过时了,容易误导人,建议直接读官方文档,2个小时就能过一遍

接口测试工具 postman, 2016-09-01(基于Chrome版的Postman,和桌面版大同小异)

[API 测试]postman, 2016-02-29

API自动化测试利器——Postman, 2015-09-26(教程里的版本比较旧了,但还是讲得不错)

How to write powerful automated API tests with Postman, Newman and Jenkins, 2015-09-03

How to write automated tests for APIs using Postman – Part 1, 2014-03-07

How to write automated tests for APIs with Postman – Part 2, 2014-04-17

Writing automated tests with Postman – Part 3, 2014-05-09

  • 有些早期文章会提到Jetpack,曾经收10美元,现在成了Postman自带的Collection Runner,可以批量执行用例

示例

Postman Echo

Making the perfect HTTP request using Postman Echo, 2015-11-13

Cooper’s Meal Plan

Conditional Workflows in Postman, 2016-03-23

Spotify Playlist Generator

Generate Spotify Playlists using a Postman Collection, 2016-11-09

CurencyCloud的Postman集合和使用说明

* 注:本文来自网络投稿,不代表本站立场,如若侵犯版权,请及时知会删除