Eolink神技之一、基于数据库智能生成API文档

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Eolink神技之一、基于数据库智能生成API文档

Eolink数据库智能API文档解决的问题

数据库脚本测试,是在我们CMMI3项目管理中比较重要的一个步骤,需要根据业务逻辑进行完整的sql功能测试,其实很多的时候作为DBA也是很麻烦的创建一堆的文档来记录,特别是在执行批量脚本的时候麻烦的很,那么,我们可以使用Eolink的这个功能来记录、测试、导入导出API,这样对于DBA来说就会节约很多的时间以及免掉整个文档处理的麻烦事情。并且可以在移交测试人员的过程中更为顺利。

演示流程

1、环境准备

2、数据库与数据表的准备

3、引入MySQL数据库

4、创建测试用例

5、完成CRUD测试

一、环境准备

这个步骤中我们主要准备Eolink的环境以及MySQL的环境,MySQL的环境我使用的是阿里的数据库,缴费时间还有800多天,这两年测试用我这个数据库就行。免费提供。

演示步骤

1、Eolink环境准备

2、数据库测试环境

3、创建测试数据库与表

1、Eolink环境

Eolink官网地址:Eolink-api接口管理平台_api管理系统_接口自动化平台

Eolink下载地址(windows端):https://data.eolink.com/winX64/Eolink.exe

一键Next式的安装,安装完成后建议使用微信登录,很方便。

2、数据库测试环境:

阿里的ECS:MySQL数据库5.7.32-log版本

rm-bp1zq3879r28p726lco.mysql.rds.aliyuncs.com

可以直接测试使用。我用于教学的。

userName:qwe8403000
pwd:Qwe8403000

截止日期到未来的823天,放心测试。

3、创建测试数据库与表

数据库名称

eolink_test

create datebase eolink_test;

建表语句

CREATE TABLE `eolink_mysql_api` (
`id`  int(8) NOT NULL AUTO_INCREMENT COMMENT '编号' ,
`createDate`  datetime NOT NULL COMMENT '创建时间' ,
`modifyDate`  datetime NOT NULL COMMENT '修改时间' ,
`phone`  varchar(20) NOT NULL COMMENT '手机号' ,
`userName`  varchar(20) NOT NULL ,
`pwd`  varchar(200) NOT NULL COMMENT '加密方式不定义故而写200' ,
`introduce`  varchar(200) NOT NULL COMMENT '简介' ,
PRIMARY KEY (`id`),
UNIQUE INDEX `only_phone` (`phone`) USING BTREE 
)
COMMENT='测试Eolink的数据表'
;

插入测试数据

insert into eolink_mysql_api VALUES
(0,NOW(),NOW(),15633558181,'Eolink_admin','123456','专为开发者设计的API协作平台'),
(0,NOW(),NOW(),15733558181,'Eolink_support_get','123456','Eolink_支持_GET协议'),
(0,NOW(),NOW(),15333558181,'Eolink_support_post','123456','Eolink_支持_POST协议'),
(0,NOW(),NOW(),15533558181,'Eolink_support_put','123456','Eolink_支持_PUT协议'),
(0,NOW(),NOW(),15833558181,'Eolink_support_delete','123456','Eolink_支持_DELETE协议'),
(0,NOW(),NOW(),15933558181,'Eolink_support_mock','123456','Eolink_支持_MOCK'),
(0,NOW(),NOW(),15833558182,'Eolink_support_MySQL','123456','Eolink_支持_MySQL')
;

创建视图

# 创建视图
create VIEW eolink_view as select * from eolink_mysql_api where introduce LIKE '%P%';
# 查询视图
select * from eolink_view;

二、测试脚本编写

演示步骤

1、准备测试sql脚本

2、Eolink引入MySQL

1、准备测试sql脚本

增加语句

# 增加语句
insert into eolink_mysql_api VALUES(0,NOW(),NOW(),'13472040766','Eolink_super_admin','123456','专为开发者设计的API协作平台');

删除语句

# 删除语句
DELETE from eolink_mysql_api where phone = '13472040766';

修改语句

# 修改语句
update eolink_mysql_api set pwd =PASSWORD('123456') where userName = 'Eolink_admin';

查询语句

# 查询语句
select * from eolink_mysql_api where userName = 'Eolink_admin';

视图调用

# 查询视图
select * from eolink_view;

2、Eolink引入MySQL

演示步骤

1、打开eolink

2、添加项目

3、操作面板变化

4、添加MySQL数据库连接

5、在线连接MySQL

6、MySQL连接成功

1、打开eolink

我这里使用的是Eolink客户端,下载完成后进行注册登录。

2、添加项目

点击左上角的【API管理】,选择【API自动化测试】

页面效果:

选择添加项目

添加一个项目,输入测试名称与备注,点击确定。

进入项目

3、操作面板变化

我们终于找到数据库连接了。

4、添加MySQL数据库连接

在第4步骤中我们看到了数据库连接的选项,我们进行点击,点击之后看到的面板中我们选择【添加数据库连接】

5、在线连接MySQL

这个步骤麻烦一些,按照下图逐一操作即可。我都标注顺序了,如果你没有在线的数据库可以使用我的,使用时间绝对保证你能彻底掌握这个操作。

6、MySQL连接成功

三、添加MySQL用例

演示步骤

1、添加用例

2、编辑用例

3、添加数据库用例操作

1、添加用例

返回【用例】,选择【添加用例】。

输入用例名称,点击确认创建【用例】。

2、编辑用例

直接点击我们创建好的用例就能进入编辑了。

页面效果:

3、添加数据库用例操作

点击【添加测试步骤】右侧的下拉菜单,选择【添加数据库操作】。

页面效果:

四、MySQL用例测试

演示步骤

1、无参数查询语句测试

2、有参查询语句

3、增删改语句测试

4、视图测试

1、无参数查询语句测试

无参的测试是一个基础测试,我们干活的时候基本上都会跑一个无参的测试一下环境。

输入查询返回结果:

eo.info(db_result["query"][0]["result"]);

编辑完成后点击保存。

查询测试

结果展现,一目了然。

2、有参查询语句

重复步骤【3.3】添加新的数据库操作,来完成下列有参的测试步骤。

添加参数【★★★★★

这里得先手动添加【${变量名}】才会出现后面的【请求参数】对话框。一定要注意,我找了好久才测试出来的,老不容易了。就这个地方必须值你的三连。

添加结果验证:

校验代码:

if(db_result["status"]=="success"){
  if(db_result["query"][0]["result"][0]["userName"]=="Eolink_admin"){
      eo.info("查询结果的userName是Eolink_admin所以测试成功");
  }else{
      eo.stop("返回结果与需求不符");
  }
}
else{
  //执行失败
  eo.stop("数据库语句执行失败");
}

保存后我们去测试:

错误返回

由于我们没有添加单引号,故而SQL语句报错,我们去修改一下。

从下图中我们能看到,通过与未通过的提示。

成功测试:

修改sql:

select * from eolink_mysql_api where userName = '${userName}';

测试成功

3、增删改语句测试

下面我对增删改语句的测试,其对参数的操作多操作几次就会很熟悉了,我在突破这里的时候我就摸索了好一会,您可以看着我的教程直接操作。很节约时间的。

1、插入语句

带变量参数的插入语句

insert into eolink_mysql_api VALUES(0,NOW(),NOW(),'${phone}','${userName}','${pwd}','${introduce}');

依然在【自定义校验规则】中添加【eo.info(db_result["query"][0]["result"]);】,后面的删除与修改都要添加哦。

保存测试:

2、删除语句

DELETE from eolink_mysql_api where phone = '${phone}';

测试结果:

3、修改语句

update eolink_mysql_api set pwd =PASSWORD('${pwd}') where userName = '${userName}';

测试结果:

4、视图测试

select * from eolink_view;

在结果中可以看到,视图也是可以直接调用的。

五、批量测试与导出API文档

这里就是我们正式工作中的步骤了,批量测试,查看通过率,都测试通过了代表我们的数据库是可以经得起考验的,是可以提交给下一个部门的时候了。

演示步骤

1、批量测试

2、导出API文档

3、导回API脚本

1、批量测试

点击【批量操作】

勾选所有步骤。

测试结果

2、导出API文档

1、返回用例面板

滚动条拉动到最右侧,选择更多的【导出】功能。

2、等待生成用例脚本

3、下载生成的用例脚本

json类型的

4、脚本格式

脚本为【UTF-8】编码格式的【JSON】数据格式。

3、导回API脚本

我们讲导出的脚本导回到项目中,相当于我们更换设备的时候就更加方便了。

导入过程需要等一会。

导回成功:

测试:

六、总结

Eolink的这个功能还是非常不错的,相当于对实施工程师和DBA都有一定的帮助。特别是实施,很多的时候需要只有一个查询的权限,但是各种老板又各种需求,有了Eolink的这个功能就可以根据项目进行划分,为每个企业定制不同的查询需求,并且是在线可用的,相当可以。

主要还得是用在【数据库测试】中,很多时候【DBA】会给测试人员一堆【SQL】,我们就可以直接使用这个功能,编辑完成后批量测试,刷刷刷就出结果,怎一个痛快了得,值得推荐,非常棒的【神技】。

体验地址

eolink.com

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
21天前
|
API 数据库 C语言
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
163 0
|
1月前
|
数据可视化 Linux API
如何在Linux使用docker部署Swagger Editor并实现无公网IP远程协同编辑API文档
如何在Linux使用docker部署Swagger Editor并实现无公网IP远程协同编辑API文档
|
30天前
|
小程序 前端开发 JavaScript
视觉智能平台常见问题之抠人脸的api如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
29 3
|
22天前
|
编解码 缓存 数据库
【软件设计师备考 专题 】编写内部设计文档:屏幕设计和数据库设计
【软件设计师备考 专题 】编写内部设计文档:屏幕设计和数据库设计
62 0
|
1月前
|
机器学习/深度学习 API 计算机视觉
视觉智能平台常见问题之获取人脸皮肤的颜色Api如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
18 0
|
1月前
|
API 开发者
1688阿里巴巴中国站平台 API接口获取商品详情 接入文档说明
1688(阿里巴巴批发网)的API接入文档是专为开发者提供的,用于指导如何集成和使用1688平台提供的API接口。这些API接口可以帮助开发者实现各种功能,如商品搜索、订单管理、用户认证等。
|
1月前
|
JSON 缓存 API
淘宝天猫获取sku详细信息 API 调用文档 及请求代码
淘宝天猫获取SKU详细信息的API调用通常涉及到商品信息的API接口。在淘宝开放平台或天猫开放平台上,你可以找到相关的API文档和调用示例。下面是一个简化的步骤和示例代码来展示如何调用这些API:
|
1月前
|
前端开发 BI API
钉钉多维表目前没有提供具体的API文档供开发者调用
【2月更文挑战第17天】钉钉多维表目前没有提供具体的API文档供开发者调用
32 4
|
1月前
|
Cloud Native 关系型数据库 分布式数据库
**PolarDB IMCI:云原生时代的智能数据库新选择**
**PolarDB IMCI:云原生时代的智能数据库新选择**
24 4
|
1月前
|
Java 关系型数据库 MySQL
基于springboot+vue网吧管理系统(程序+数据库+文档)
基于springboot+vue网吧管理系统(程序+数据库+文档)