Jenkins集成Newman注意点——Newman运行多个Collections不一定会导致Job失败

本文介绍了在Jenkins中使用Newman进行接口自动化测试时遇到的问题,即当多个接口测试集合运行时,构建结果可能不准确。如果接口测试分布在多个集合或文件夹中,最后一个接口的状态将决定整个构建的成功与否。为了解决这个问题,建议将接口测试拆分为多个Jenkins Job单独执行,以提高测试结果的可靠性。同时,可以利用Jenkins的MultiJob插件来串联这些任务。
摘要由CSDN通过智能技术生成
0.前言

在接口测试中,Postman可谓是独领风骚,Newman可以命令行界面运行Postman编写的文件,搭配Jenkins可以实现一键接口自动化测试。

1.使用场景

理想的接口自动化测试,是在Jenkins中构建项目之后,通过邮件来获取测试的结果。但是接口测试内容一般较多,测试的Collections、Folders和Environment都不尽相同。为了让测试报告更加集中,我们一般会使用Newman的多集合运行命令:

newman run <接口测试A.json> &&newman run <接口测试B.json> &&newman run <接口测试C.json>

亦或者是:

newman run <接口测试.json>  --folder 文件夹1  --folder 文件夹2  --folder 文件夹3 
2.注意点

这种多集合、多文件夹的运行结果可能会导致Jenkins的构建结果出错,即在接口有误的情况下,Jenkins依然汇报“Successfully”,反而让人疑惑。

Why?我们看一下Newman官方给出的Explanation:

If the 接口测试B.json takes long time to run than other two, then if we have any failures in <接口测试A.json> or <接口测试B.json> that will not be shown in the jenkins jobs or any CI tools such as bitbucket pipeline. This happens because the result of the run which completes at last takes precedence over others.

大致意思是说,在Jenkins调用Newman命令运行多个Collections时,构建结果只取决于最后运行的一个接口。

假设接口的运行顺序是A->B->C,如果A和B的测试都有问题,而C没有问题,那么整个Job依然是Successful。

3.建议

接口测试尽可能分开多个Job执行,提升测试结果的可靠性。如果有需要可以借助Jenkins的MultiJob进行多任务的串联

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值