目录
对 SSL 的支持 newman 第三版以后(目前已经是 4.3.1)可以支持通过 CLI 选项来支持 SSL
对 newman 配置代理:通过对 Postman 的 request 环境变量进行设置来完成代理的配置。
前言:
使用Postman+Newman+Jenkins进行接口自动化测试和实现持续集成(CI)是一种常见的方案。Postman是一个流行的API开发和测试工具,Newman是Postman的命令行工具,而Jenkins是一个流行的持续集成工具。
相信提到接口测试,大家都知道而且用过 Postman,也认为这是一个非常容易上手的接口测试工具,实际上 Postman 功能非常强大,还有很多部分非常有意思而且实用的功能,我先抛砖引玉,关键是大家一起来探索和一起来分享。比如 Postman 能不能进行自动化接口测试,其实是可以的,而且在如今大家不断提到 TDD 和如何打造 pipeline 上,这方面的需求越来越强烈。
举个简单的真实场景,开发提供了 300 多个 API,每个 API 都有各种参数,所以我们会先在 postman 中为这 300 多个 API 编写 300*n 个 testcase,如果我们都用 postman 跑,其实效率并不高,作为工程师图形化不如命令好使,因此一定要用 newman,既然可以命令行你过来执行为啥不能 CI?
-
试想,当开发一直在不停的维护这 300 多个接口时,难道需要开发每次都告诉我们测试人员该进行测试了吗?只要通过 Jenkins 来自动执行这些接口测试,基本上 CI 就完成了很多。
-
如果能够监控到哪些接口发生变动,自动选择相关的 collections,也就是 test suits,就是朝更牛掰的路上又前进了一步。
-
Jenkins 还可以自动发 email 给开发和你,另外也可以自动提交 bug,如果这样的话你就更舒服了,看邮件就可以了。
Postman 部分
这个太简单了,就略过去,百度搜一下,下载安装一个 native 的即可,因为作为 Chrome 插件已经不支持了。我们直接进入正题。
Collection 或者说测试集的建立
在 Postman 中,Collection 类似文件夹,可以把同一个项目的请求放在一个 Collection 里方便管理和分享,Collection 里面也可以再建文件夹。如果做 API 文档的话,可以每个 API 对应一条请求,如果要把各种输入都测到的话,就需要每条测试一条请求了。
在 Postman 里面可以将 Collection 导出存为 json 文件,有了这个文件,就可以通过 Postman CLI 完成命令行执行,实现自动化测试。
-
导入:用于导入你或团队保存的 API 请求文件,json 格式。
-
新建文件夹:用于 API 请求划分类别,便于管理。
-
保存请求:保存你的 API 请求,返回值也能存储下来。
-
下载:下载你测试通过的 API 请求,团队共享,导入。json 格式,可手动编辑的
Postman 允许用户发送任何类型的 HTTP 请求,例如 GET,POST,HEAD,PUT、DELETE 等,并且可以允许任意的参数和 Headers。
她支持不同的认证机制,包括 Basic Auth,Digest Auth,OAuth 1.0,OAuth 2.0 等。
她还可以响应数据是自动按照语法格式高亮的,包括 HTML,JSON 和 XML。
- 可以通过"Capture API request with Postman"