如何利用postman做app接口测试

发布网友 发布时间:2022-04-20 21:10

我来回答

5个回答

懂视网 时间:2022-05-15 10:15

PostMan的安装

貌似下载和使用PostMan必须要-.-
因为现在提供两种形态的App:

  1. chrome的插件 (已经快要被废弃了,推荐使用App)

  2. 的App

而且在使用时需要登录账号,我这边是直接登录的Google账号-。-貌似有其它方式,但是我并没有去尝试。

App版云盘地址(Mac版本,今天刚下载的6.0.10,需要的请自取):
链接:https://pan.baidu.com/s/18CDp... 密码:mrpf

下载完毕解压后直接运行即可,然后就是注册账号之类的,目测账号这一块主要是用于后续的小组分享需要(可以直接将你的调用记录分享给其他人)。

发送一个请求

这是PostMan最基础的一个用法,用来发送一个请求。
可以设置HeaderBody等信息。

Collections

我们可以将每次发送的请求进行保存,方便下次请求该接口时,直接调用即可,
如果保存请求的话,会被保存到一个Collections里去,类似一个集合。
PostMan提供了方法,能够一键运行整个Collections中所有的请求。

然后我们就可以在需要的时候,直接运行集合中所有的请求了。

保存请求记录的时候,在下边选择对应的Collection即可

开始API测试

测试脚本位置


PostMan针对请求编写的测试脚本,在这个位置,采用的是JavaScript语法,右侧是一些预先配置的代码片段。
以及我们可以在Pre-request Script中编写脚本,用于在发送请求前执行。

一些简单的语法

PostMan也提供了一种断言,来帮助做一些验证。

tests['Status code is 200'] = responseCode.code === 200

tests['Data length >= 10'] = JSON.parse(responseBody).data.length >= 10

赋值为true即表示通过,false为失败。
tests的直接赋值作用比较局限,如果在脚本中进行一些其他异步操作,则需要用到pm.test了。

setTimeout(() => {
 pm.test("test check", function () {
 pm.expect(false).to.be.true
 })
})

只用上边的tests赋值+pm.test/pm.expect已经能够满足我们的需求了,其余的一些只是在这之上的语法糖而已。
各种语法示例

在测试脚本中发送请求

我们可以在拿到一个API返回结果后,根据该结果发送一些新的请求,然后添加断言。

let responseJSON = JSON.parse(responseBody)

// 获取关注的第一个用户,并请求他的用户信息
pm.sendRequest(responseJSON[0].url, function (err, response) {
 let responseJSON = response.json()

 pm.test('has email', function () {
 pm.expect(responseJSON.email).is.be.true // 如果用户email不存在,断言则会失败
 })
});

如果我们有一些动态接口要进行测试,可以尝试这种写法。
一级接口返回List
二级接口根据ListID进行获取对应信息。

如何处理大量重复的断言逻辑

针对单个API,去编写对应的断言脚本,这个是没有什么问题的。
但是如果是针对一个项目的所有API去编写,类似于判断statusCode这样的断言就会显得很溶于,所以PostMan也考虑到了这点。
在我们创建的Collection以及下层的文件夹中,我们可以直接编写针对这个目录下的所有请求的断言脚本。


这里的脚本会作用于目录下所有的请求。
这样我们就可以将一些通用性的断言挪到这里了,在每个请求的Tests下编写针对性的断言脚本。

变量的使用

PostMan提供了两种变量使用,一个是global,一个是environment

global

代码操作的方式:

pm.globals.set("variable_key", "variable_value") // set variable
pm.globals.get("variable_key") // get variable
pm.globals.unset("variable_key") // remove variable

通过GUI设置:

设置完后我们就可以这样使用了:

基本上在所有的可输入的地方,我们都能够使用这些变量。

environment

环境变量,这个是权重比global要高一些的变量,是针对某些环境来进行设置的值。
操作方式类似。

在使用代码操作的方式时,只需将globals替换为environment即可。
在发起一个请求,或者一键发送所有请求时,我们可以勾选对应的环境,来使用不同的变量。

在针对大量API测试时,拿environment来设置一个domain将是一个不错的选择。
这样在请求中我们只需这样写即可:

{{domain}}/res1
{{domain}}/res2

domain: https://api.github.com

一个简单的示例:

通过直接运行一个Collection,我们可以很直观的看到所有的接口验证情况。

参考资料

https://www.getpostman.com/do...

之前使用PostMan,最多就是模拟一下POST请求,最近刚好碰到类似的需求,发现原来PostMan还可以做的更多。
这篇只是使用PostMan进行API测试的最基础操作,还有一些功能目前我并没有用到,例如集成测试、生成API文档之类的。

接口相当于是获取和操作服务资源的方式,肯定属于产品的核心。
所以测试是必须的,在交付QA同学之前,自己进行一遍测试,想必一定能节省一部分的时间。

热心网友 时间:2022-05-15 07:23

1、在Google已安装完成的接口测试工具的postman的程序之后,点击进入桌面的chrome应用启动器。

2、进入到应用启动器界面中之后,可以看到是postman的应用图标程序,点击进入。

3、进入到postman的欢迎的界面中,如果有账号可以进行点击登录账号,无账号可以点击Go to the app进入。

4、这样就进入到postman界面中,进行对app网址进行测试,选择get请求,把app网址在输入框中输入。

5、输入完成之后,然后进行点击send。

6、如果测试成功,返回的status为200 ok,这样app接口测试就成功了。

热心网友 时间:2022-05-15 08:41

1、首先双击打开桌面上的postman软件,等待一会软件就会打开:

2、然后这里以一个get请求为例,先选择get方式并填入请求的地址,一般get请求参数写在地址后面,用?和&连接,写好后点击右边的send按钮就可以了:

3、点击send后,下面就会打印请求返回的参数了。以上就是postman测试接口的方法介绍:

热心网友 时间:2022-05-15 10:15

接口测试从未如此简单 - Postman (Chrome插件)

一个非常有力的Http Client工具用来测试Web服务的, 我这里来介绍如何用它测试restful web service

注:转载请注明出处http://www.cnblogs.com/wade-xu/p/42254.html 

安装

进入Chrome的设置->More tools->Extensions

点击最下面的Get more extensions

搜索Postman

选择第一个点击

点击Launch APP

如何使用Postman做接口测试

填写service url

选择method, 比如 GET

这个请求需要参数,点击URL params 填好参数

参数填好之后,工具会在URL 后面自动补上参数

点击send

Post请求也类似

这里需要增加两个Headers

如果访问你的服务需要Authentication, 则需要在下面的tab里配置用户名密码进行身份验证

你所有测试过的数据都可以通过Add to collection进行收集

你运行过的测试都会在History tab里找到。

更多请参考:

官方博客地址http://blog.getpostman.com/

Postman也可以做数据驱动的自动化测试,增加断言,一次性运行collections, 定时运行等等功能,不过这是付费服务,详见额外的扩展包Jetpacks, Newman

Teaching is learning.

热心网友 时间:2022-05-15 12:07

今天安装研究了下postman,真的太好用了。以前做ajax提交数据的时候,在PHP文件老是不能看到ajax的处理结果,这下完全解决了。以下希望可以帮助你。

需求:会员登录后,提交到后台,ajax的形式,利用postman查看ajax的返回值

文件介绍:前台模板文件、后台ajax的url的控制器文件

方法:

1、谷歌登录后,打开postman,选择如下的验证模式,填写对应的账号和本地域名。

2、点击cookies 可以看到获取了两个值

3、打开浏览器,查看cookies对应的正确值,编辑修改保存

4、点击send

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com