当前位置:   article > 正文

深度探索:在 Postman 中实现自动化测试的全面指南!(2)

深度探索:在 Postman 中实现自动化测试的全面指南!(2)
  • 安全性测试: 安全性测试是验证软件系统是否能够抵御安全攻击。
  • 兼容性测试: 兼容性测试是验证软件系统是否能够在不同的环境和平台上正常工作。

不同的自动化测试类型和类别适用于不同的测试场景和需求,测试人员需要根据实际情况选择合适的自动化测试类型和类别,以实现最佳的测试效果。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

二、Postman 中创建自动化测试

2.1 创建新的请求

打开 [Postman]并创建一个新的工作区(Workspace),单击“请求”选项卡(Request)并选择要发送的请求类型(如 GET、POST、PUT 等),在“URL”字段中输入请求的 URL,在“Body”选项卡中选择请求正文的格式(如 JSON、XML、文本等),在“Headers”选项卡中添加必要的请求头,在“Params”选项卡中添加请求参数。

2.2 使用环境变量管理多个环境

Postman 的环境变量功能允许你轻松地在不同的环境之间切换,而无需更改请求的 URL 或其他设置。

单击左侧边栏的“Environments”选项卡,单击“+”按钮以创建一个新的环境,在环境中填写环境变量名和变量值。

环境变量设置后,如果要在请求中使用环境变量,请使用以下语法:

{{environment_variable_name}}

例如,要在请求 URL 中使用名为“host”的环境变量,语法为:

{{host}}/api/v1/users

当你在不同的环境之间切换时,Postman 会自动替换环境变量的值,点击页面右上角可切换环境变量。

2.3 编写测试脚本

Postman 允许你使用 JavaScript 在 Tests tab 中编写测试脚本,测试脚本可以用来验证响应状态、响应时间、响应体等。比如我要在 [Postman]中将下面返回响应的 token 校验字段提取到环境变量中,我要怎么写脚本呢?

{
“code”: “0”,
“data”: {
“token”: “fgub938t203t9ug0j2r9it2094942”
},
“message”: “success”
}

要提取出上面的 token 校验字段到环境变量中,你可以在 Tests 中写入以下脚本。

var body = JSON.parse(pm.request.body.raw);

var token = body.token;

console.log("Token: " + token);

pm.environment.set(“token”, token);

一般接口的 token 是用来鉴权的,所以你需要将其存到环境变量中,然后在 Collections 中全局引用这个变量,这样其它接口在测试或者是自动化测试的时候就可以继承这个鉴权的 token 了。

有一点要注意,在集合中设置了鉴权的 token 后,在接口中需要选择“Inherit auth from parent”,也就是继承父级(继承自集合中设置的 token),不然不会生效的。

2.4 使用 Pre-request Scripts

Pre-request Scripts 允许你在发送请求之前执行一些脚本。这可以用来动态生成请求参数、设置请求头、修改请求正文等。比如你要在发送请求时在每个请求的请求头加上一些参数,你就可以在集合的 Pre-request Scripts 中编写 Javascript 脚本,这取决于你的需求,形如:

pm.request.headers.add({
key: ‘aaaaa’,
value: ‘bbbbb’
});

2.5 运行测试和查看结果

当上述步骤完成后,也就是你根据你的业务需求,将接口、环境及环境变量、接口鉴权校验、请求头都设置完毕后,你可以试着点击“Send”按钮来调试一下,看看是否符合初步预期,如果符合,接下来就可以在 Postman 中运行自动化测试了。

提个醒,在编写任何自动化测试之前,都要首先确保单个接口能够调试成功,然后逐步往下联调集成,养成良好测试路径,才能事半功倍。

要在 Posmtan 中进行自动化测试,你可以点击集合名上的“。。。”,然后点击“Run collection”选项打开 Runner 页。

在 Runner 页,你可以选择需要测试的接口,然后选择循环次数、间隔时间,也可以上传 Data 文件,这个文件是需要测试的数据,设置完毕后点击“Run ”运行即可。

运行完成后,你可以在 Collection Runner 的结果窗口中查看每个请求的执行情况。这包括请求的响应时间、状态码、响应体等信息,这样,一个简单的自动化测试就完成了。

三、高级功能与最佳实践

3.1 Postman 自动化测试的进阶脚本编写

使用 Chai Assertion Library 增强测试能力

Chai Assertion Library 是一个功能强大的 JavaScript 断言库,可以帮助你编写更复杂、更具可读性的测试脚本。Postman 内置了 Chai Assertion Library,因此你可以直接在测试脚本中使用 Chai 的断言方法。

以下是一些 Chai 断言方法的示例:

  • pm.expect(actual).to.be.equal(expected);:断言实际值等于预期值。
  • pm.expect(actual).to.be.above(expected);:断言实际值大于预期值。
  • pm.expect(actual).to.be.below(expected);:断言实际值小于预期值。
  • pm.expect(actual).to.include(expected);:断言实际值包含预期值。
  • pm.expect(actual).to.have.lengthOf(expected);:断言实际值具有指定的长度。

这些 Chai 断言方法需要包裹在 pm.test() 中使用。在 Postman 中,pm.test() 是用来编写测试脚本的方法,你可以在其中编写你的测试逻辑,包括断言部分。因此,你应该将这些断言方法放在 pm.test() 中,以确保它们在测试中正确执行,并根据断言结果生成相应的测试结果,例如:

pm.test(“Status code is 200”, function () {
pm.response.to.have.status(200);
});

pm.test(“Status code is 200”, function () {
pm.expect(“actual”).to.be.equal(“qq”);
});

如何利用环境变量在多个请求间传递数据

Postman 的环境变量允许你在不同的请求之间传递数据。这可以用来共享一些公共的数据,例如:用户凭证、API 密钥、测试数据等。具体步骤已经在上文的 2.2 和 2.3 小节讲过,不再具体赘述。简单来讲就是在环境变量中设置变量及变量值,然后在 Collection 中通过{{}}引用环境变量即可。

3.2 CI/CD 集成

如何将 Postman 测试集成到 CI/CD 流程中

将 Postman 测试集成到 CI/CD 流程中可以帮助你实现持续集成和持续交付。这样,你可以在每次代码更改后自动运行 Postman 测试,并根据测试结果决定是否将更改部署到生产环境。

以下是一些将 Postman 测试集成到 CI/CD 流程中的步骤:

1.安装 Postman Newman

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-bj1BYnkh-1712783905006)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
  

闽ICP备14008679号