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

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

目前 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 的灵活性没那么好,我一开始也用 postman,现在全改成 go 了

恒温 回复

用 go 语言做接口测试?

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

恒温 回复

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

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

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

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

现在就转 go 了吗?

恒温 回复

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

玄月指光 回复

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

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

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:29
测试新手 重新开启了讨论 11月18日 10:30

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

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