一、请求结构

1、请求协议

  • http — 普通的http请求
  • https — http+ssl证书,加密的http请求,传输数据更加安全
  • ftp — 文件传输协议,主要用来传输文件

2、请求IP/域名:就是指提供接口的系统所部署的服务器地址

3、请求端口:如果不填端口,默认是80,否则需要填写端口号

4、接口路径:指系统提供的接口在什么位置

5、接口参数:参数在接口路径后,用“?”来表示路径地址完了,剩下的都是参数了,用“&”来区分参数个数

6、接口HTTP参数【url看不见等隐藏参数】

  • HTTP请求方式

  • HTTP请求头

  • HTTP请求体

    json格式

    xml格式

    html格式

    二进制格式( 多数用于图片 )

    字符串格式

二、postman教程

1、基本使用教程

  • 点击+新建一个文件夹,便于管理自己的接口用例,方便后续使用

Postman接口自动化_python

  • postman组成部分

Postman接口自动化_python_02

  • 左侧用例文件夹,一来可以用于管理自己的用例(导入和导出),二来可以在此执行自动化测试
    Postman接口自动化_单元测试_03
    Postman接口自动化_python_04Postman接口自动化_python_05
    Postman接口自动化_软件测试_06
    Postman接口自动化_接口自动化测试_07
    觉得报告不直观或不好看的话可以安装newman,只需导出postman中的用例,用newman执行
    Postman接口自动化_python_08
    Postman接口自动化_软件测试_09
    2、环境变量
  • 像环境多的情况下,如test1-10,但是请求参数和路由都是一样的,为了避免每次修改url,只需在环境变量中新建值供用例调用
    Postman接口自动化_软件测试_10
    Postman接口自动化_接口自动化测试_11
    Postman接口自动化_接口自动化测试_12
    3、关联参数获取与使用
  • 常见的情况有第二个接口的请求参数要带上登录接口返回的token
    Postman接口自动化_接口自动化测试_13
    Postman接口自动化_软件测试_14
    Postman接口自动化_接口自动化测试_15
    Postman接口自动化_接口自动化测试_16
  • 常见的情况还有cookies,会将token放在headers中,使用时需要提取响应头中的cookies,放到后面接口的请求头中
    Postman接口自动化_测试工程师_17
    Postman接口自动化_python_18
  • 具体实现步骤,先在返回token的接口处添加一个脚本(Tests里面),提取返回参数中的token,将该token设置为全局变量两个步骤,后面的接口直接{{token}}调用即可
    Postman接口自动化_接口自动化测试_19
    Postman接口自动化_软件测试_20

三、接口测试用例

Postman接口自动化_单元测试_21

四、接口测试

1、文件夹中新建requests

2、 选择请求方式

3、复制接口地址到postman中的url框

4、请求参数的提交

  • GET请求,点击Params,输入的参数会自动拼接到url框中
    Postman接口自动化_python_22
  • POST请求,点击Body输入参数,需要核对接口文档中声明的请求类型是application/json还是multipart/form-data
  • application/json
    Postman接口自动化_python_23
  • application/x-www-form-urlencoded
    Postman接口自动化_python_24
  • multipart/form-data
    Postman接口自动化_单元测试_25
  • application/x-www-form-urlencoded和multipart/form-data的区别
  • 有无文件上传,有的话使用multipart/form-data,没有的话两者都可以使用
  • application/x-www-form-urlencoded,窗体数据被编码为名称/值对,这是标准的编码格式。multipart/form-data,窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串(name1=value1&name2=value2…),然后把这个字串append到url后面,用?分割,加载这个新的url。当action为post时候,浏览器把form数据封装到http
    body中,然后发送到server。