如何用Postman实现自动化测试?

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

这里简单演示在postman中怎样实现自动化测试(不涉及到用户登录的token认证)

导入测试用例文件,测试web接口

postman使用流程:创建collection文件夹,在该文件夹中创建post,get请求;其中传入的参数支持url格式(form-data),即在url后面拼接参数和值,来访问接口;也支持json格式(raw)

postman自动化测试: 在一条post/get请求中,pre-request scripts是请求前执行的脚本,Tests是请求返回结果执行的脚本。

1、变量设置

如果是url格式的请求,则在form-data中填写相应参数(pname),并定义参数变量({{pname}}),使其能够在pre-request scripts中通过测试用例文件为指定参数变量赋值,动态测试web接口。

如果是json格式的请求,则设置raw为json字符串类型,并写入带参数变量的json字符串。

2、pre-request script请求前执行的脚本

pre-request script为请求前执行的脚本,主要实现将测试用例文件中的数据赋值给Body中定义的参数变量。

复制代码
pm.collectionVariables.set("TDATA",data.TDATA)
pm.collectionVariables.set("TTYPE",data.TTYPE)

3、Tests请求返回结果执行的脚本

复制代码
pm.test("insertPersonal", function () {
    pm.response.to.have.status(200);
});

tests["Status code is 200"] = responseCode.code === 200;  //Status code : Code is 200

//判断请求时长是否小于200ms ,具体时长按情况自定义
tests["Response time is less than 200ms"] = responseTime < 200;

其中tests 为键值对形式(postman中与脚本相关的变量,可以直接使用),用于表示我们的测试结果是成功与否,最终展示在 Test Results 中。

  • key :(如:code 200)我们可以用来当做结果的一个描述
  • value:其值为布尔型,true 表示测试通过, false 表示测试失败。

4、使用Runner进行自动化测试

点击Runner,选择你要自动化测试的Collections文件夹 ,勾选你要自动化测试的web接口,导入测试用例文件,这里使用的是json格式的用例文件(可以使用csv),文件内容如下:

复制代码
[
    {
    "TDATA":9,
    "TTYPE":3
    },
    {
    "TDATA":2,
    "TTYPE":4
    },
    {
    "TDATA":3,
    "TTYPE":6
    },
    {
    "TDATA":4,
    "TTYPE":8
    }
]

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关推荐
wyiyiyi7 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.8247 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
没有bug.的程序员7 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋8 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
秃了也弱了。8 小时前
WireShark:非常好用的网络抓包工具
网络·测试工具·wireshark
AntBlack8 小时前
不当韭菜V1.1 :增强能力 ,辅助构建自己的交易规则
后端·python·pyqt
敲上瘾10 小时前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
杜子不疼.10 小时前
《Python学习之字典(一):基础操作与核心用法》
开发语言·python·学习
myzzb11 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa
TLuoQiu11 小时前
小电视视频内容获取GUI工具
爬虫·python