• 接口测试——postman


    一、接口测试的准备工作

    做接口测试之前需要有接口文档,请求参数,返回参数

    二、使用postman进行接口测试

    1.get请求

    ①get请求可以直接在URL后面添加问号加参数,不需要使用工具来测试接口:

     ②将stu_name改成小黑

    以上是单个参数的传参,如果是有多个参数的话,使用&来连接多个参数传参:url?name=小黑&sex=女&age=18

    2.post请求

    ①登录接口:填写URL,请求方法;在body-->form-data里面填写参数以及value,根据接口说明文档判断返回的对错。

    注册接口:填写URL,请求方法,在body-->form-data里面填写参数以及value。注册一个新的登录用户,然后看看注册的用户能否登录。

     ③cookie

    a.页面抓包:浏览器输入https://qun.qq.com/member.html,点击右键--->检查--->network--->XHR,然后刷新页面就能抓到包了。

    XHR---------代表发出去的接口的请求

    ①get_group_list-------------获取群列表的接口;create---我创建的群;join--我加入的群;manager----我当管理员的群

    ②get_friend_list----------获取好友的接口;0_99代表某个分组内的阶值。

    ③search_group_member-----------获取左边的这个群的信息的接口,

    从抓到的包中获取到了接口的地址,接口的请求参数,接下来使用postman发送一次请求:

    ①get_group_list-------------获取群列表的接口,从header中找到URL、请求参数、cookie

    cookie填写在headers下面,如图所示:

    ②get_friend_list----------获取好友的接口;

    ③search_group_member-----------获取左边的这个群的信息的接口,

    这两个接口的方法与获取群列表的接口方法相同。

    ④header

    这里需要在headers里面传一个Referer,Referer 的作用就是判断这个URL是从哪里点进来的

    入参是json类型的

    body--->raw---->json(application/json),将json串直接复制过来即可。运行成功后,使用查询学生接口查询是否能查到这个新添加的学生信息

    ⑥上传文件接口

    填写URL,请求方法,body--->form_data--->填写key---->选择file----->value栏的select files选择需要上传的文件即可。

    ⑦保存接口

    为了方便下次调用,将接口分类保存起来。

    ⑧变量定义

    当有很多接口需要修改ip的时候,可以将ip定义成一个变量,调用接口的时候直接引用变量即可,方便且不易出错。调用的时候直接是{{ip}}即可。

    • 变量的添加方法如图:变量ip,变量值是http://xxxx.cn

    调用接口的时候直接将这一串的ip使用参数替换就可以了,如图{{ip}},它就会自动的取刚才定义的变量。

     

    当然,也可以定义变量cookie,如果每个接口都需要用到cookie,就可以定义一个cookie变量。以后如果cookie失效了,将新的cookie改一下就可以了了

     三、接口测试用例

    接口的测试用例与功能测试用例的编写方法相同,只需将所有业务点覆盖到就可以了。

    四、接口自动化

     ①URL:https://www.apiopen.top/novelSearchApi?name=盗梦笔记

     ②将url复制到postman上,考虑到各种场景的测试,url后面的name=盗梦笔记就使用变量来代替:https://www.apiopen.top/novelSearchApi?name={{book_name}}

     ③在桌面编写一个文本文件book.txt,写有3条数据:红楼梦,西游记,水浒传。(特别提醒:book.txt的编码需要保存为utf-8格式)

    ④postman调用接口并保存

     ⑤Runner

    点击Runner---->上课用的接口--->查询小说接口

     各个选项的选择如图所示:

    ⑥Run 上课用的接口,我们这里有3条数据,它就会帮你运行3次,如下图所示表示3次请求都获取到了。

    第二种情况:

    要是有多条数据就写多列就行了。例如登录接口:我们可以是第一条正常登录,第二条异常登录,等等。

     

    运行,如下图,共有3条登录请求,其中有2条是登录成功的,但是有1条是登录不成功的,因为账号密码错误。这里,我们需要手动查看每一条请求的成功与否,为了能实现自动校验结果,我们使用了postman来实现接口的自动化。

     五、postman实现接口的自动化

    1.调用登录接口:

    点击tests--->Responses body:contain string)--->修改test()的内容和include()的内容。

    如下图所示,这样就加了检查点。它就会自动的帮你检查,每次调用完这个接口之后有没有返回userid,sign。假如是返回了,那么你的这条用例就过了,没有返回就是失败。填好如下信息,保存。然后就点Run。

     这样就能直观的看出第一条和第二条用例成功了,第三条失败(因为账号密码是错的),所以就报错了。

     

     六、检查点不是统一的。

    上面的例子中,检查点是单一的;当检查点都不一样的时候,就可以这样写:

    调用查询小说的接口:

    ①在文本文件里面写上check列:

     postman的写法:

    写法一:

    或者是写法二:

     

    Run一下:

     

  • 相关阅读:
    找出一个字符串中最长重复次数的子字符串,并计算其重复次数
    p2p 打洞技术
    vmvare centos 7.0 root密码忘记后重置及总结
    Hyperledger Fabric 本地运行的简单示例
    基于docker的 Hyperledger Fabric 多机环境搭建(下)
    基于docker的 Hyperledger Fabric 多机环境搭建(上)
    docker疑难解答 -- 设置远程服务监听
    C#中internal关键字
    SqlParameter.Value = NULL 引发的数据库异常
    Razor语法大全
  • 原文地址:https://www.cnblogs.com/yyl6/p/11256182.html
Copyright © 2020-2023  润新知