yapi使用

                        YAPI接口测试步骤

  • 测试准备

1.1 登录系统

登录YAPI接口管理系统,登录系统之前需要用vpn连接公司内网

http://yapi.dev.jf.in/

账号:禅道账号,密码:禅道密码

1.2 加入项目

登录系统查看所在的项目,如果左侧看板没有对应的项目,找开发添加到对应的项目里

1.3 安装插件

安装chrome扩展插件

以左家庄-志愿者服务项目为例,在请求接口之前需要安装Chrome扩展插件cross-request,未安装插件“发送”按钮置灰,不能进行接口调试。

 

解压下面压缩包

 

 

Chrome浏览器--设置--更多工具--扩展程序,点击“加载已解压的扩展程序”,找到解压的文件夹,添加到扩展程序里。错误信息忽略,点击“背景页”可以打开调试模式,在请求接口的时候可以查看接口请求信息和返回数据。

 

添加扩展程序完毕,刷新浏览器,此时的“发送”按钮可以点击状态

 

1.4 配置环境变量

点击“设置”tab下的“环境配置”菜单,添加所在的测试环境。

环境名称:表示我们当前所属的测试环境,随意填写

环境域名:被测接口的域名

Header:鉴权blade-auth,通过抓包获取。过期时间大概10分钟,需要及时更新

Global:全局变量,根据接口测试需要是否添加。

以上信息输入后点击“保存”,如果提示没有权限,找开发添加配置权限。

 

  • 编写接口测试用例

2.1 接口调试

打开接口列表菜单,选择需要测试的接口,点击“运行”tab,接口请求域名需要1.4章节配置的环境变量。

 

根据接口的定义,添加对应的参数,如POST请求,需要将请求参数加在body里。

添加好参数,点击“发送”,出现如下信息表示接口是通的

2.2 添加测试集合

点击“测试集合”--“添加集合”,输入集合名称

 

添加好集合后,选中集合,将需要的测试的接口导入到集合中

 

2.3 通用规则配置

在编写接口测试用例之前进行通用规则配置,类似于通用断言,这样可以减少对每个接口添加相同的断言

 

示例:

assert.equal(status, 200)  表示该接口响应状态码是200时,接口通过

assert.equal(body.code, 200)  表示接口返回的body体,code是200,接口通过

assert.equal(body.success, true)  表示接口返回的body体,success是true,接口通过

 

2.4 编写接口测试用例

2.4.1 接口测试场景示例

是否有必填参数

必填参数值是否正确

是否有选填参数

选填参数值是否正确

预期结果

断言

返回正常业务数据

业务数据断言

返回正常业务数据

业务数据断言

返回异常状态码

状态码断言

返回异常状态码

状态码断言

返回异常状态码

状态码断言

根据业务需要,参数值可以设置数据大小、长度、数据类型。

2.4.2 接口测试用例格式

接口用例主要设置以下3个值,用例名称、参数格式、请求参数

用例名称:见名知意,例:【1-1】垃圾桶值守台账--列表数据前10条。表示垃圾桶值守台账列表接口的第一条测试用例,场景是请求列表的前10条数据

请求参数格式(Content-Type):,根据传参内容不同使用不同格式application/json、text、img等。

请求参数:以POST请求和GET请求为例,POST请求把请求参数放在body中,GET请求把参数放在QUERY PARAMETERS

 

2.4.3 接口测试用例参数设置

根据接口定义的参数类型,可以通过mock方式设置参数值,例如设置current值的大小,操作如下:

 

点击“高级设置”--mock数据--选中一个数值类型,输入参数内容,下方会展示出表达式和示例。点击“插入”会将动态变量添加到参数值中,请求接口的时候会以动态参数作为入参数据。根据用例设置,mock表达式的数据类型可以选择“日期”、“浮点数”、“布尔值”等。

 

注意事项:

  1. 添加的mock表达式要用“”引起来;

 

  1. 每次调完接口要点击“更新”,否则不能保存数据。

 

2.4.4 接口测试用例断言设置

{

  "code": 200,

  "success": true,

  "data": {

    "tagList": [

      {

        "name": "垃圾桶站",

        "alias": "垃圾桶站点位",

        "id": "1564817299626811394",

      }

    ],

    "details": {

      "records": {}

      "id": "1600807546008563712",

      "communityName": "新源里社区",

      "code": "27fd7fbf202342bb8e1586c9f495ff8b",

      "pointId": "1566741440753750016",

      "nameOfPatrolPoint": "新源里西小区(A1-01)",

      "addressName": "新源里西小区-新源里西1号楼前",

      "watchUserPhone": "18431297027",

      "watchState": 2

      "updateTimestamp": ""

    },

    "fileUploads": []

  },

  "msg": "操作成功"

}

如果将communityName的值断言为“新源里社区”,可以写成:

assert.equal(body.data.details.communityName, "新源里社区"),开关开启执行集合测试的时候该断言才会生效。

 

对于返回的json字符串,断言表达式括号里面的部分,{}包含{},那么{}用” . ”表示

{}包含[],那么用[n]表示,n表示序列从0开始。

例:Assert.Equal(Body.data.Records[1].name, ”zhangsan” )

  • 执行测试

所有接口测试用例写完后,选择测试的所在环境,点击“开始测试”。所有接口用例请求完毕表示测试完成。

 

  • 查看报告

执行完测在测试集合列表查看测试结果,状态为绿色对号表示接口测试通过,其余状态表示接口测试用例未通过,点击“测试报告”查看测试结果

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
当然可以帮你写一个用k8s部署给yapi使用的mango的yaml。具体如下: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: yapi-mango-deployment namespace: yapi spec: replicas: 1 # 副本数 selector: matchLabels: app: yapi-mango template: metadata: labels: app: yapi-mango spec: containers: - name: yapi-mango image: mongo:latest # 镜像名称及版本 ports: - containerPort: 27017 # 容器开放的端口号 volumeMounts: - name: data-volume mountPath: /data/db # 数据存放路径 volumes: - name: data-volume persistentVolumeClaim: claimName: yapi-mango-pvc # 声明的持久卷名称 --- apiVersion: v1 kind: Service metadata: name: yapi-mango-service namespace: yapi spec: ports: - name: mongo port: 27017 # 服务开放的端口号 targetPort: 27017 selector: app: yapi-mango type: ClusterIP # 服务类型 ``` 解释: 这个yaml文件定义了一个Deployment和一个Service两个Kubernetes对象。 Deployment部分定义了用于运行MongoDB的容器,其中`replicas`字段指定了该Deployment需要启动的Pod副本数量。容器镜像指定了`mongo:latest`,端口配置为27017,`volumeMounts`字段指定了数据存放路径。同时,`template`字段也需要指定一些元信息,如该Pod所属的标签`app: yapi-mongo`。 Service部分定义了一种服务类型,连接到MongoDB容器运行的端口,将该端口映射到集群内部的IP地址和端口号。`selector`字段指定了MongoDB服务要绑定到的Pod,也就是`app: yapi-mongo`标签。服务类型为ClusterIP,表示该MongoDB服务只使用在Kubernetes集群内部进行通信。 这样,使用上述yaml文件就可以在Kubernetes集群中启动一个MongoDB服务,通过部署在Kubernetes的其他应用程序(如yapi)与MongoDB进行通信,实现数据库的访问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值