postman+newman+jenkins组合

最后更新于:2022-04-01 09:43:37

> 这样的组合可以快速的让你开始接口测试,一起来看看这个小儿美的接口测试工具吧 ## Postman-录制Case ### 安装Postman [Postman](http://www.getpostman.com/)现在是一个单独的`App`,以前是`Chrome`的一个插件,现在单独出来了。 ### 安装Postman Interceptor 记得一定要安装`Postman Interceptor`插件,这样在`chrome`浏览器上访问的信息都会在`postman`的app端同步显示。安装好后`Postman Interceptor`会在浏览器的右边显示,如下: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1a31798.jpg "") ### 连接Postman和Interceptor 在我们使用`postman`前,开启这个工具: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1a4403f.jpg "") 我是在`mac`下安装`postman`的,打开后如下: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1a67093.jpg "") 点击图中红框的按钮,打开`Interceptor`开关。 这样的工作准备完毕后,我们就可以通过`chrome`正常访问了。 ### 录制请求 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1ac0b78.jpg "") 这样就录制了一条url了。 ### 过滤特定url 如果你想录制特定的url的访问请求,可以在`postman interceptor`中加过滤条件: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1b06cae.jpg "") 这样我们就只录制跟`testerhome`相关的请求了。 ### 编写验证 有了url只是开始,现在执行一下这个请求: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1b3f0cc.jpg "") 执行完后,我们有了返回值了,我们可以根据这个填写验证点 比如我们想验证返回的结果中是否包含了`TesterHome`,然后再来个反例,看是否包含`Doctorq` ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1d720b3.jpg "") 验证语句如下: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1d8a2f6.jpg "") 这个时候执行,我们就能看到执行结果如下: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1dbc440.jpg "") 测试结果显示也很清晰。 用例已经执行完了,我们要把用例导出,用`newman`来执行: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1dd9d29.jpg "") `ok`,到`newman`了。 ## Newman-执行Case [newman](http://www.getpostman.com/docs/newman_intro)安装文档 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1f17437.jpg "") 安装成功后,执行上面命令,可以显示版本信息,现在可以执行接口测试了。 如果你出现如下错误,请看[newman github](https://github.com/postmanlabs/newman),是因为node4.0以上的版本支持最新的newman,所以我们下载最新的。 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb1f580da.jpg "") ~~~ npm install -g newman@beta ~~~ ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb21043e7.jpg "") 这个时候执行就没问题,执行完毕后,会看出结果的详细信息。如果加上参数,可以生成如下报告: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-23_56cbdb213f2d6.jpg "") **`newman`也可以直接执行`postman`云端保存的`collections`,** 具体怎么做请参考上面的文章。 因为`newman`的方式是通过命令行的方式,所以就可以通过`jenkins`去做定时自动化回归测试了。 ## Jenkins-自动化回归 具体怎么在Jenkins里面配置我就不讲解了 ## 缺点 - 无法直接导入HAR包,不过现在呼声很高,请查看[github上的support](https://github.com/postmanlabs/postman-app-support/issues/86) - App无法通过代理直接连接POSTMAN,这样录制移动端的http请求就很麻烦 这两种局限性,目前的想法的通过将har文件转为能导入postman的文件格式,有时间去尝试下。
';