Postman使用手册

发送请求和查看响应

发送请求


        Postman的界面分为左边的侧边栏和右边的请求构建器两部分。请求构建器允许你可以快速的创建几乎任何类型的请求。一个HTTP请求的四部分:URL、Method、Headers、Body,在Postman中都可以设置。

        URL:

        在你构建request请求的时候,首先要设置的就是URL。在URL输入框中输入你请求的链接,你可以单击Params按钮,在编辑器中输入key-value格式的URL参数。

        在URL地址栏中的输入和编辑器中输入的key-value参数,不会自动的编码为 URL-encoded,选中要编码的文本,右键选择EncodeURIComponent ,手动编码参数值。

        你可以单独的添加参数,Postman会自动的把他和URL整合到一起,如果你从其他的地方粘贴了URL过来,Postman也会自动的把 Params中的参数进行设置。

        一些API端点使用路径变量,你可以在Postman中设置,他们位于两个 / 中,样式如下:

        如果你要设置他,单击Params按钮,你会发现key部分已被自动设置好了,根据需要填写value部分就行。

        Headers:

        单击Headers切换按钮,你可以在key-value编辑器中设置任何字符串作为header的名称。

        受限的headers和cookies

        不幸的是一些headers收到Chrome和XMLHttpRequest规范的限制,以下headers被屏蔽:

        Accept-Charset

        Accept-Encoding

        Access-Control-Request-Headers

        Access-Control-Request-Method

        Connection

        Content-Length

        Cookie

        Cookie 2

        Content-Transfer-Encoding

        Date

        Expect

        Host

        Keep-Alive

        Origin

        Referer

        TE

        Trailer

        Transfer-Encoding

        Upgrade

        User-Agent

        Via

        headers预设

        你可以保存常用的headers在headr prest里面:

        Method:

        单击HTTP的请求方法按钮,在给出的下拉菜单中选择使用的方法即可,对应的方法需要body的,body部分便被设置为可填写。

        body部分编辑:

        当我们发送请求需要填写body部分时,Postman几乎可以让我们发送任何类型的HTTP请求。body编辑器分为4个部分:

        form-data

        form-data是web表单默认的传输格式,编辑器允许你通过设置key-value形式的数据来模拟填充表单。你可以在最后的选项中选择添加文件。

         这个编码格式同样可以通过设置key-value的方式作为URL的参数。

        Raw

        二进制

接口批量测试

创建测试用例集、子集


        多个接口请求可以放在一起并管理起来。可以一个工程一个Collection,这样方便查找及统一处理数据;

        创建Collections;

        在Collections里添加请求,在右侧准备好接口请求的所有数据,并验证后,点击save按钮;

        保存好之后可以在这里看到;

创建测试用例


         创建接口测试用例,即新建http请求,选择请求方式、写好url、请求头、请求体。

设置变量


        postman的变量和Jmeter的参数化相似,即把若干处出现多次的数值用一个变量表示,达到一次修改、多处生效的效果,便于修改和管理。

        变量可以动态选择不同的测试环境;

         使用这些键值的时候只需要加上两个花括号引用key,跑用例的时候在右上角下拉列表选择需要的环境就好,如下:

添加响应处理


        响应处理有点类似Jmeter里的检查点,即通过检查响应数据是否符合预期来判断test是否通过。在Tests中添加检查条件,postman提供了一些常用的检查条件的代码,直接添加或稍加修改即可。比如要测试返回结果是否含有某一字符串,就可以用到 Tests。以gold_add 接口为例,来编写测试用例,分别测试返回的结果是否含有,如下所示:

        响应成功返回PASS, 失败返回FAIL。

        常用tests如下:

        检查response body中是否包含某个string

        tests["Body matches string"] = responseBody.has("string_you_want_to_search");

        注意:“Body matches string” 需唯一。

        检测JSON中的某个值是否等于预期的值

        vardata=JSON.parse(responseBody);

        tests["Your test name"] =data.value === 100;

        JSON.parse()方法,把json字符串转化为对象。parse()会进行json格式的检查是一个安全的函数。

        如:检查json中某个数组元素的个数(这里检测programs的长度)

        vardata=JSON.parse(responseBody);

        tests["program's lenght"] =data.programs.length === 5;

        检查response body是否与某个string相等

        转换XML body为JSON对象

        var jsonObject = xml2Json(responseBody);

        tests["Body is correct"] = responseBody === "response_body_string";

        测试response Headers中的某个元素是否存在(如:Content-Type)

        tests["Content-Type is present"] = postman.getResponseHeader("Content-Type");

       或者:

        tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");

        上面的方法,不区分大小写。下面的方法,要区分大小写。

        验证Status code的值

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

        验证Response time是否小于某个值

        tests["Response time is less than 200ms"] = responseTime < 200;

        name是否包含某个值

        tests["Status code name has string"] = responseCode.name.has("Created");

        POST 请求的状态响应码是否是某个值

        tests["Successful POST request"] = responseCode.code=== 201 || responseCode.code=== 202;

        很小的JSON数据验证器

        var schema = {

            "items": {

                "type": "boolean"

            }

        };

        var data1 = [true, false];

        var data2 = [true, 123];

        console.log(tv4.error);

        tests["Valid Data1"] = tv4.validate(data1, schema);

        tests["Valid Data2"] = tv4.validate(data2, schema);

        设置环境变量,建立多个接口间的关联

        以gold_add 接口为例,由于该接口有权限验证,需要admin用户才可以做操作,需要添加cookie,所以需要将login 接口关联起来使用。

        在login 请求中, 在”Tests”中加入

        var jsonData =JSON.parse(responseBody);//获取body中返回的所有参数

        postman.setEnvironmentVariable("sign",jsonData.login_info.sign);//把返回参数中的sign设置为环境变量

        这样sign 就可以作为环境变量,应用于gold_add接口。

        在gold_add 接口中,{{username}} 由于在环境变量”user_pwd” 中已经设置,可以直接输入变量名,{{sign}} 动态取得login接口中 Response 的 “sign” 值,{{sign}}已在上面login 请求的”Tests” 中定义。

批量执行测试用例


        点击测试用例集中的“run”,批量运行测试用例,弹出collection runner,点击“Start Run”,批量运行测试用例。

        运行后,弹出测试结果,显示测试通过和失败的个数、请求URL、请求头、请求体信息,响应头、响应体信息,状态码等,我们就可以查看测试用例的执行结果及具体信息

导入导出测试数据

 导出数据包


导出工作环境


 导入数据包


 导入工作环境


如有侵权请联系本人删除哦~~~

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

推荐阅读更多精彩内容