软件测试之接口文档

什么是接口文档?

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

没有接口文档,想做接口测试的话,自己实践过以下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数据包:

  1. {

  2. "msg":"登录成功",

  3. "result":{

  4. "uname":"用户名",

  5. "pwd":"密码"

  6. },

  7. "code":1

  8. }

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

  1. {

  2. "msg":"用户或者密码为空",

  3. "result":{

  4. "uname":"用户名",

  5. "pwd":"密码"

  6. },

  7. "code":0

  8. }

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

  1. {

  2. "msg":"用户或者密码错误",

  3. "result":{

  4. "uname":"用户名",

  5. "pwd":"密码"

  6. },

  7. "code":0

  8. }

参数

说明

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数据表如下:

 
  1. {

  2. "msg": "操作成功",

  3. "result": [

  4. {

  5. "treeNodeId": 1,

  6. "treeNodeName": "系统管理",

  7. "treeNodeType": 1,

  8. "url": null,

  9. "position": 1,

  10. "icon": "el-icon-setting",

  11. "children": [

  12. {

  13. "treeNodeId": 2,

  14. "treeNodeName": "用户管理",

  15. "treeNodeType": 2,

  16. "url": "/sys/VuexPage1",

  17. "position": 2,

  18. "icon": "el-icon-user",

  19. "children": []

  20. },

  21. {

  22. "treeNodeId": 3,

  23. "treeNodeName": "角色管理",

  24. "treeNodeType": 2,

  25. "url": "/sys/VuexPage2",

  26. "position": 3,

  27. "icon": "",

  28. "children": []

  29. },

  30. {

  31. "treeNodeId": 4,

  32. "treeNodeName": "密码修改",

  33. "treeNodeType": 2,

  34. "url": null,

  35. "position": 4,

  36. "icon": null,

  37. "children": []

  38. }

  39. ]

  40. },

  41. {

  42. "treeNodeId": 5,

  43. "treeNodeName": "论坛管理",

  44. "treeNodeType": 1,

  45. "url": null,

  46. "position": 5,

  47. "icon": "el-icon-reading",

  48. "children": [

  49. {

  50. "treeNodeId": 6,

  51. "treeNodeName": "文章管理",

  52. "treeNodeType": 2,

  53. "url": "/sys/Articles",

  54. "position": 6,

  55. "icon": null,

  56. "children": []

  57. }

  58. ]

  59. }

  60. ],

  61. "code": 1

  62. }

参数

说明

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数据包说明:

  1. {

  2. "result":[{"id":1,"title":"文章标题","body":"文章内容"],

  3. "pageBean":{

  4. "page":1,

  5. "rows":10,

  6. "total":100,

  7. }

  8. }

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:成功

 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

  • 30
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值