软件测试之接口文档

什么是接口文档?

在项目期间,前后端是分离开发的,为了前后有连贯性,就必须由前后开发工程师共同定义接口、写接口文档再根据接口文档去开发,一直到项目结束。

没有接口文档,想做接口测试的话,自己实践过以下2种方式:

1。 通过抓包的方式,根据业务流获取到对应的接口,然后整理成相关文档,如果有不清楚的字段,将问题汇总后找开发咨询,然后在进行接口测试。(抓包工具charles)

2。可以通过 jmeter 的代理录制功能,将接口逐一录制下来形成接口文档,然后再逐一进行接口测试。

一般在项目开发阶段,接口文档基本上是必备产物了,一般由后端开发人员提供,作为和前端人员进行前后端接口联调的桥梁,或者与别的项目模块进行交互提供指导等等,接口文档的准确性,实时性,详细与否等,都会极大的影响联调工作。(或者是开发推演阶段,开发会定好接口名称、入参、出参等,维护在接口文档里边,有更新的话,会及时通知相关人员)

目前经历过的公司,都会有接口文档,有差异的地方 就是平台不一样,常见的有swagger、DOClever、sosapi,如果面试过程中遇到该问题,上述的2种回答可供参考,另外可根据具体项目上的情况再聊聊。

接口文档规范

  • 方法

  也就是我们常写的新增,删除,修改,查询

  • url

  调用方法,一般是从前端调后端的方法地址

  • 请求参数

  一般分五列:字段、说明、类型、备注、是否必填 

  • 返回参数

  1、如果只返回接口调用成功还是失败(新增、删除、修改等),则只有一个结构体:

      code和message两个参数;

  2、如果要返回某些参数,则有两个结构体:

      是code/mesage/data;

        是data里写返回的参数,data是object类型;

  3、如果要返回列表,那么有三个结构体,

          是code/mesage/data,data是object,里面放置page/size/total/totalPage/list 5个参数,其中list是Arrary类型,list里放object,object里是具体的参数。

了解目的

  1. 用户登录
  2. 用户注册
  3. 树形菜单
  4. 文章查询
  5. 文章新增
  6. 文章修改
  7. 文章删除

用户登录:

  接口调用and请求

http请求方式: POST    (一般有两种get/post)
https://xxx.xxx.xxx:8080/项目命名/vue/userAction_login.action
字段说明类型是否必填
uname名字String
pwd密码String
登录成功返回JSON数据包:
{
    "msg":"登录成功",
    "result":{
        "uname":"用户名",
        "pwd":"密码"
    },
    "code":1
}

用户或者密码为空返回JSON数据包:

{    
    "msg":"用户或者密码为空",
    "result":{
        "uname":"用户名",
        "pwd":"密码"
    },
    "code":0
}

用户或者密码错误返回JSON数据包:

{
    "msg":"用户或者密码错误",
    "result":{
        "uname":"用户名",
        "pwd":"密码"
    },
    "code":0
}

参数

说明

msg

提示消息

result

返回登录的用户名和密码

code

状态 0:登录失败 1:登录成功

用户注册

接口调用

https://xxx.xxx.xxx:8080/项目命名/vue/userAction_reg.action
字段说明类型是否必填
uname名字String
pwd密码String

注册返回JSON数据包:

{
    "msg":"用户注册成功",
    "code":1
}

用户注册失败返回JSON数据包:

{
    "msg":"用户注册失败",
    "code":0
}

参数

说明

msg

提示消息

code

状态码 0:失败 1:成功

树形菜单

调用接口

https://xxx.xxx.xxx:8080/项目命名/vue/treeNodeAction.action

返回的json数据表如下:

{
    "msg": "操作成功",
    "result": [
        {
            "treeNodeId": 1,
            "treeNodeName": "系统管理",
            "treeNodeType": 1,
            "url": null,
            "position": 1,
            "icon": "el-icon-setting",
            "children": [
                {
                    "treeNodeId": 2,
                    "treeNodeName": "用户管理",
                    "treeNodeType": 2,
                    "url": "/sys/VuexPage1",
                    "position": 2,
                    "icon": "el-icon-user",
                    "children": []
                },
                {
                    "treeNodeId": 3,
                    "treeNodeName": "角色管理",
                    "treeNodeType": 2,
                    "url": "/sys/VuexPage2",
                    "position": 3,
                    "icon": "",
                    "children": []
                },
                {
                    "treeNodeId": 4,
                    "treeNodeName": "密码修改",
                    "treeNodeType": 2,
                    "url": null,
                    "position": 4,
                    "icon": null,
                    "children": []
                }
            ]
        },
        {
            "treeNodeId": 5,
            "treeNodeName": "论坛管理",
            "treeNodeType": 1,
            "url": null,
            "position": 5,
            "icon": "el-icon-reading",
            "children": [
                {
                    "treeNodeId": 6,
                    "treeNodeName": "文章管理",
                    "treeNodeType": 2,
                    "url": "/sys/Articles",
                    "position": 6,
                    "icon": null,
                    "children": []
                }
            ]
        }
    ],
    "code": 1
}

参数

说明

msg

提示消息

result

返回树形菜单结果集

code

状态 0:失败 1:成功

Result树形菜单结果集

参数

说明

treeNodeId

菜单id

treeNodeName

菜单名

treeNodeType

菜单类型 1:父菜单2:跳转菜单

url

路由地址

icon

菜单图标

children

子菜单集,如果没有则为一个空json数组

文章查询

调用接口

https://xxx.xxx.xxx:8080/项目命名/vue/articleAction_list.action

参数

是否必填

说明

page

当前页码,默认为1

rows

一页展示多少条数据,默认为10

title

按文章标题查询

返回json数据包说明:

{
    "result":[{"id":1,"title":"文章标题","body":"文章内容"],
    "pageBean":{
        "page":1,
        "rows":10,
        "total":100,
    }
}

result结果集

参数

说明

id

文章id

title

文章标题

body

文章内容

pageBean 分页对象说明

参数

说明

page

当前页码

rows

一页展示的条数

total

总条数

文章添加

调用接口

https://xxx.xxx.xxx:8080/项目命名/vue/articleAction_add.action

参数

是否必填

说明

title

文章标题

Body

文章内容

添加成功返回JSON数据包:

{"msg":"新增成功","result":[],"code":1}

添加失败返回JSON数据包:

{"msg":"新增失败","result":[],"code":0}

参数

说明

msg

提示消息

code

状态码 0:失败 1:成功

文章修改

调用接口

https://xxx.xxx.xxx:8080/项目命名/vue/articleAction_edit.action

参数

是否必须

说明

id

文章id

title

文章标题

body

文章内容

修改成功返回JSON数据包:

{"msg":"修改成功","code":1}

修改失败返回JSON数据包:

{"msg":"修改失败","code":0}

参数

说明

msg

提示消息

code

状态码 0:失败 1:成功

文章删除

调用接口

https://xxx.xxx.xxx:8080/项目命名/vue/articleAction_del.action

参数

是否必须

说明

id

文章id

删除成功返回JSON数据包:

{"msg":"删除成功","code":1}

删除失败返回JSON数据包:

{"msg":"删除失败","code":0}

参数

说明

msg

提示消息

code

状态码 0:失败 1:成功


这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

文中的接口文档我也都备好了,有需要的请回复【接口文档】免费领取(会不定期发放喔)。

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值