接口测试 关于学习 postman+newman 的一些疑问

测试新手 · 2019年11月15日 · 最后由 测试新手 回复于 2020年11月18日 · 2314 次阅读

目前 postman 学习进度:
✔基本构建请求,发送请求

✔pre-request script 了解 postman 电脑版提供的脚本(设置环境变量,全局变量,发送请求)

✔tests 了解 postman 电脑版提供的脚本(清除环境变量,全局变量,检查状态码,响应时间,response)

✔使用 runner 执行用例,使用 csv 文档作为测试数据

✔查看 console
✔从浏览器复制 curl 直接导入 postman 快速构建请求
✔使用 newman 命令行执行 api,并生成测试报告

问题:
1.参数为图片,文件时,如何发送请求?

以下情况考虑的是批量执行接口请求的情况,而不是在 postman 对单个接口发送请求:
2.请求参数为图片,文件时,使用 runner 如何执行?
3.大部分接口都需要进行登录,但是如果每个接口都在预请求脚本写入登录脚本,又会报请求太多,该怎么处理?
4.同一个接口如何测试两个场景: 登录,不登陆?
5.使用 newman 批量执行用例,不同接口需要不同的测试数据,该怎么处理?还是只能一个个执行?

附言 1  ·  2019年12月05日

目前经过自主学习,
问题 1,2,已经知道如何处理.问题 3, 4 还没找到合适的方案
问题 5 可以用一个比较麻烦的处理方式,newman 是执行 json 文档,可以手动把接口 json 拆出来,也可以分成多个 collection.但是这样比较麻烦.目前没发现单个 request 可以生成 json 文档的方式.
待后续学习了,知道如何处理了。再关闭此问题。

共收到 15 条回复 时间 点赞

如果只是做接口测试,那 postman 基本能满足要求。如果要涉及自动化,newman 是可以帮你通过命令行方式跑气 Postman 生成的 json 文件,从而实现让可以 jenkin 结合。 但是。。。我还是想说,自动化别这么搞。 现在市面上很多 XXX 接口自动化平台,我只想说他们都很受限,你要高覆盖率,高稳定性,这些工具框架都不满足。 我比较同意恒温的,开发用什么语言你跟着用什么语言,自己去整合封装适合自己业务特点的自动化测试框架,这里很多同学会反驳为啥我要跟开发同语言,其实这里面只是看自己业务特点,像我很多东西得复用开发代码,那我难道不用同语言么?淡然你做成服务也行。 总归写代码的方式吧,自由自在。。。 效率不见得会比 postman 或其他平台的低, 像我自己封装后一定时间沉淀后, 基本要的都封装成服务化后,使用非常方便,代码复用率又高,脚本又不受环境测试数据的影响稳定。

恒温 回复

用 go 语言做接口测试?

是啊,项目是 go,测试也用 go

恒温 回复

嗯,目前在入门阶段,我学的是 python,用 request 可以弄接口测试自动化。但是没想那么快用代码实现自动化。看到网上有关于 postman➕newman➕jenkins 实现接口自动构建,执行,监控这样。所以想说先用这套试一下,到时候转代码实现应该也很快。

另外还想问下,接口目录是建议怎么分层比较合适?目前是按照 ui 页面。

请求参数里配置文件或者图片,在 body 中勾选 binary,可以看到 select file

http://123.57.42.201/ 具体看这个链接,测试完美实战教学

现在就转 go 了吗?

恒温 回复

想知道用 Go 语言来做测试,有什么资料可以推荐

玄月指光 回复

额,这个好像会 go 语言就可以了吧

1.参数为图片,文件时,如何发送请求?

以下情况考虑的是批量执行接口请求的情况,而不是在 postman 对单个接口发送请求:
2.请求参数为图片,文件时,使用 runner 如何执行?
3.大部分接口都需要进行登录,但是如果每个接口都在预请求脚本写入登录脚本,又会报请求太多,该怎么处理?
4.同一个接口如何测试两个场景: 登录,不登陆?
5.使用 newman 批量执行用例,不同接口需要不同的测试数据,该怎么处理?还是只能一个个执行?

目前经过自主学习,
问题 1,2,已经知道如何处理.问题 3, 4 还没找到合适的方案
问题 5 可以用一个比较麻烦的处理方式,newman 是执行 json 文档,可以手动把接口 json 拆出来,也可以分成多个 collection.但是这样比较麻烦.目前没发现单个 request 可以生成 json 文档的方式.

米阳MeYoung 回复

确实,用 postman+newman+jenkin 比较受限,也是各种不方便,如题中的疑问在使用代码的方式实现自动化,应该是不存在的.
听你们说的确实和开发用同种语言比较好.

3.大部分接口都需要进行登录,但是如果每个接口都在预请求脚本写入登录脚本,又会报请求太多,该怎么处理?

这个可以登陆之后,拿到 sessionid,然后后面都用这个 sessionid 可以么? 

测试新手 重新开启了讨论 11月18日 10:30
测试新手 关闭了讨论 11月18日 10:29

作个总结。
第一次在论坛发布问题。
遇到问题一般我是习惯先在网上找答案。一般不会出现找不到答案的情况。
发布这个问题时,对于接口测试我还是个萌新。刚开始学习,不懂接口,不懂 request header,body.不懂批量执行接口。不懂 postman 如何使用。
现在用 postman 仅仅用来做单个接口验证与测试,或者新接口 正常的参数是否通过。通过才用代码写入自动化项目。
如果像标题说的那样集成,可能问题 3,4 还是存在解决方案,可我并没有去找,因为用代码很容易解决的问题。
就这样。关闭问题了。

说实在,postman 的灵活性没那么好,我一开始也用 postman,现在全改成 go 了

测试新手 关闭了讨论 11月18日 10:35
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册