• Postman做接口测试


    以一下接口为例:

    接口一:创建定时任务

    请求方法:post

    Content-Type:“application/x-www-form-urlencoded”

    路径: /php/addtaskinfo.php

    调用参数: jsondata[taskname]:任务名称

          jsondata[isdisable]:任务是否启用(0:启用, 1:禁用)

          jsondata[level]:任务优先级(0-15)

         jsondata[creator]:创建任务用户

         jsondata[triggers]:触发器列表(参照下方详解)

         jsondata[commands]:操作列表(参照下方详解)

         jsondata[dirname]:任务所属目录(为空表示属于根目录)

    返回数据: {“res”:”1”}

    接口二:手动开始任务

    请求方法:post

    Content-Type:“application/x-www-form-urlencoded”

    路径: /php/exetaskcmd.php

    调用参数:jsondata[taskCommand]:’runtaskinfo’

            jsondata[taskId]:任务 id

    返回数据: {“res”:”1”}

    1.创建集合

    第一步,点击New Collection,创建集合

     

    第二步,输入集合名称

     

    2.创建文件夹

    第一步,点击集合右下角,打开集合设置

     

    第二步,点击Add Folder创建文件夹,文件夹就是接口的名称

     

    3.创建请求

    第一步,点击文件夹右边三点

     

    第二步,点击Add Request,创建请求

     

    第三步,输入请求名

     4.输入请求url

    选择请求方法,和请求url

     

    5.输入请求体

    第一步,点击Body-x-www-form-urlencoded,选择JSON格式,输入请求体

     

    第二步,点击Save保存

    第三步,点击Send执行

    6.查看返回结果

    7.点击下方响应数据Body,看到返回结果为‘1’,跟上面返回结果一致请求成功

     

    8.断言:

    (1)json断言,点击Tests,点击右边的Response body:JSON value check,如下图:

     

                                  1

     

    1代表的是测试名字,你可以把它当做成自己的测试预期结果

    2代表的是字段,就是我选取res作为我断言的字段,如图1

    3代表的是我2字段里面的内容,如果我实际结果res字段里面的内容跟我填的3这个地方的内容一样,那么测试成功,不一样就失败

    假设有一段响应是:

    {“errcode”:4002,

    “errmsg”:{

    “code”:200,

    “msg”:”ok”}

    “info”:[1,2,3,4,5]

    }

    如果我想获取ok,2这里就可以填写JSONData.errmsg.msg

    如果我想获取5’,2这里就可以填写JSONData.info[4]

    (2)包含字段,点击Tests,点击右边的Response body:Contains string,如下图:

     

    1代表的是测试名字,你可以把它当做成自己的测试预期结果

    2是请求响应里面包含的字段,也就是当请求响应里面包含这个字段,就断言成功

    9.为了更好的展示断言结果,我们可以设置一下操作

     

    1我们选择一个包含字符断言

    2是一段固定代码,获取到我们请求的响应数据,responseBody是响应体类型为String,但是我们的响应体是Json格式的所以我们要把String转化为Json格式的。

    3是响应数据的res字段

    4实际结果与预期结果的表述我们把获取到的result放在实际结果:后面

    5res字段的值,也是我们的预期结果

    6最后断言后显示的结果,比较清楚

    10.关联

    含义:后一个请求的请求信息要用到前一个请求的响应信息,如:登录时的token信息等,接下来我们要调用手动开始任务的接口,但是请求体当中需要用到设置计划任务接口响应里面的taskId信息,所以我们将做一下关联。

    在前一个请求的断言中将需要用到的响应数据全局化,做如下设置:

     

     

    1是获取到taskId字段信息

    2点击“Set a gobal variable“添加一个全局变量

    4是获取到的taskId字段

    3是给4taskId取一个全局变量名taskid,切记34不要同名

    填写好手动开始任务的请求信息后,在请求需要用到的位置用{{全局变量}}‘进行参数化就可以了,记得在运行请求时先让前一个请求先运行。如下图:

     

    运行结果如下:

     

    运行通过,关联成功。

  • 相关阅读:
    nohup
    MYSQL提权总结
    udf提权方法和出现问题汇总
    windows 2012 抓明文密码方法
    用CPAU替代RUNAS
    MS15-034 HTTP.sys (IIS) DoS And Possible Remote Code Execution – AGGIORNAMENTO CRITICO
    php注入专题
    Mysql 另类盲注中的一些技巧
    Elasticsearch Groovy任意命令执行漏洞EXP
    linux好用的擦屁股工具
  • 原文地址:https://www.cnblogs.com/1527275083gj/p/15012836.html
Copyright © 2020-2023  润新知