接口测试教程 - PostMan(六)Collection Runner 运行参数设置

接上一小节的 Postman 批量运行用例中提到的 Collection Runner 界面有各种参数,如下图:

运行参数如下:

  • Environment:选择运行的环境,环境主要决定环境变量的;
  • Iterations: 用例迭代的次数,也就是当前选中的这些请求需要运行几次;
  • Delay:延迟,用来设置每个请求之间的运行时间(以毫米为单位),如果设置了,则一个请求运行完后会等待相应的时间才运行下一个请求;
  • Log Responses:记录响应日志,这是一种限制性的设置,默认是记录所有请求的日志,也可以限制为只记录错误日志或者完全不记录;
  • Data:选中数据文件,这是 Postman 提供的数据驱动的方式,数据针对当前 Collection 中请求中使用的变量。支持 Csv 和 Json 格式的文件;
  • Keep variable values:保持变量值。如果 Collection 中有脚本重新设置环境变量或者全局变量的值,默认情况下只对当次运行有效。如果勾选了此选项,那么在脚本中重设的变量值会保存下来,也就是会直接修改 Postman 中预设的变量值;
  • Run collection without using stored cookies:如果勾选此选项,运行 Collection 的时候则不会使用 Postman 的 cookie 管理器;
  • Save cookies after collection run:运行后,储存运行过程中的 cookies,此选项默认勾选。

Environment 环境

在 Postman 中不同的环境可以设置不同的环境变量值,这样可以通过切换环境,灵活改变需要修改的变量值。

在运行 Collection 的时候,同样可以通过切换环境来改变这些环境变量的值。

关于环境及环境变量,请参考对应的章节。

Iterations 迭代

迭代的意思其实就是运行多少次。

以下示例中,我选中了 Postman Echo 中的一个文件夹,并设置了迭代次数为 3 次:

我们看看运行结果:

设置了迭代 3 次,那么 Runner 会将选中的请求运行 3 次,在运行结果的右侧,我们可以看到一个筛选器,你可以点击对应的数值,分别查看每次运行的情况。

你还可以通过顶部橙色的按钮Run Summary查看运行摘要,如下图:

在摘要界面,我们可以看到三个迭代运行的情况摘要,在此界面所有迭代中都是通过才会标记该用例为通过(也就是请求前面的方框为 绿色),可以点击列表顶部的数字回到对应迭代的运行结果界面。

Log Responses 限制日志记录

默认情况下,会开启所有请求的日志记录,但是对于一些大型的 Collection,可以关闭日志记录以提高性能。

Log Responses 有三种选项:

  • For all requests:所有请求的响应内容都回被记录;
  • For failed requests:只有至少一个断言失败的请求才会记录响应日志;
  • For no requests:所有请求都不会记录日志。

Data 数据文件

这是 Postman 提供的数据驱动的功能,可以选择 Csv 或者 Json 文件中记录的数据。

以下面的请求为例,下图中的请求有两个参数pathvalue:

那么对应的文件格式如下:

Csv 文件的格式

csv 是一种以逗号为分隔符的文本文件,也可以通过 excel 编辑。Postman 支持的 csv 数据文件格式如下(顶部的 path 和 value 分别对应 Collection 请求中的变量):

path, value
post, 1
post, 2
post, 3
post, 4

Json 文件格式

Json 文件大家应该都清楚,是一种类似 Js 中对象格式(熟悉 Python 的同学可以参考字典格式)。

Postman 支持的格式为一个数组,数组中的对象包含的键值对为所有的变量值:

[{
  "path": "post",
  "value": "1",
}, {
  "path": "post",
  "value": "2",
}, {
  "path": "post",
  "value": "3",
}, {
  "path": "post",
  "value": "4"
}]

注意,如果数据文件中的变量数量少于 Collection 中使用的变量数量,那么 Postman 运行时会尝试从环境( Environment )中取值。

文件上传后,会在 Data 选项下方出现 Data File Type 选项:

提示: Iterations 迭代的数量,会根据数据的数量自动设置。比如上面我们的数据有 4 条,则会自动设置迭代数量为 4。当然,你可以修改。

Keep variable values 保持变量值

默认情况下,每次 Collection 运行结束后,都会自动清理测试过程中由代码产生的环境变量和全局变量。

如果你之前在环境中设置了某个变量的值,就算在 Collection 中有代码改变变量的值,在运行 Collection 后,变量的值依然时你设置的那个而不是代码改变后的。但如果你勾选了此设置,那么你将会看到变量的值变为运行过程中代码改的那个值。

简单举一个例子(以下环境和环境变量的操作请参考对应章节):

  1. 首先我们设置一个 test 的环境;
  1. 在该环境中设置一个变量 value,并设置默认值为 123 ;
  1. 发送一个请求,在请求的 Tests 中重设 value 的值为 xyz;
    请求url为:
https://postman-echo.com/get?test={{value}}

请求的 Tests为:

pm.environment.set("value", "xyz"); // 重设 value 变量的值

pm.test("判断请求是否包含test参数", function () {
    pm.expect(pm.response.text()).to.include("test");
});
  1. 不勾选此选项运行一次 Collection 并观察环境变量的值,依然是 123;
  1. 勾选此选项再运行一次 Collection,再观察环境变量的值;
  1. 能明了否?

Run collection without using stored cookies 不使用 cookie 管理器

在我们测试会保存 Cookie 的请求时,Postman 内置的 Cookie 管理器会自动储存请求收倒的 Cookie 信息(这功能类似浏览器的行为)。后续请求可以使用 Cookie 管理器中的 Cookie 信息。

比如登录请求后会自动存储 Cookie,而后需要登录才能访问的请求,会使用已存储的 Cookie 信息,就能正常访问。

此设置如果勾选,则会阻止 Collecion 中的请求存储 Cookie 和从 Cookie 管理器中读取 Cookie。也就是说,你需要自己额外处理这些 Cookie。

当然如果这些请求对应的接口并没有使用 Cookie 机制那就不用在意此选项了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,905评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,140评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,791评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,483评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,476评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,516评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,905评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,560评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,778评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,557评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,635评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,338评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,925评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,898评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,142评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,818评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,347评论 2 342

推荐阅读更多精彩内容

  • Postman是一款强大的API接口测试工具。 有许多不容易发现的好用的功能,下面简单介绍其中一部分功能。详细内容...
    西边人阅读 2,556评论 0 7
  • Postman 接口测试神器 更好的体验,请直接打开:当前文章。 Postman 是一个接口测试和 http 请求...
    IT老马阅读 7,050评论 4 13
  • Postman是一款强大的API接口测试工具,有许多不容易发现的好用的功能,下面简单介绍其中一部分功能。详细内容可...
    selfboot阅读 8,422评论 6 25
  • Postman介绍 Postman是google开发的一款功能强大的网页调试与发送网页HTTP请求,并能运行测试用...
    薪火_阅读 22,570评论 5 7
  • R小姐心里很明白,有的人,只看第一眼就知道自己已经输了。 也许R小姐迟早有一天会记不清第一次见到的X先生是...
    半糖1019阅读 418评论 0 0