auto-api api自动化管理集成平台,api接口请求返回参数管理,api自动化测试
通常的文档生成工具,都需要开发人员编写注解或注释,代码入侵太强,而且费事,我希望api工具具有如下功能:自动解析代码,根据代码生成api接口,如果有注释就自动扫描注释(自动集成swagger),没有就以代码为准,生成的api接口如果有不合理的地方,可以在页面进行修改,利用web页面的表单编辑修改要比在代码里处理方便直观。Api接口调整自动完成维护,自动通知开发测试改动部分内容(集成邮件或极光推送等
·
https://gitee.com/legouw/auto-api#### 介绍 torna torna: 企业接口文档解决方案,目标是让文档管理变得更加方便、快捷。Torna采用团队协作的方式管理和维护项目API文档,将不同形式的文档纳入进来,形成一个统一的维护方式。
#### 介绍 在前后端分离设计开发流行的今天,多数公司的开发流程都有以下问题。 1、后台开发人员每次新增api字段,新增api接口需要手工维护apidoc。 2、需要集成第三方api框架如Swagger大量自定义注解,或基于javaDoc注释解析的第三方框架。 3、前后端开发前中期联调困难,前端联调非常依赖后端接口代码开发顺序质量与完成进度。 ,后台开发人员依赖前端页面进行流程测试,或花费较大时间定义json数据验证。 4、依赖Postman工具,每次api变更,新增都需要进行维护工作,没有自动化集成项目api。 5、接口自动化测试较为耗时,测试人员需要根据apidoc或者页面流程抓取接口进行开发。 6、由接口自动化测试编排功能提供,快速融入项目,快速了解模块流程。 系统功能说明 1、支持OpenApi3.0规范,零侵入式的任意实体VO自定义泛型自动化api推导功能,自动集成Swagger注解、校验注解。 2、支持自定义的api数据字典字段定义规则如:商品类型(1-单品,2-组合),自动解析字段规则值,后端支持根据自定义规则自动化mock数据功能,支持前端自定义mock接口数据功能,解耦前后端联调依赖。 3、自动化接口api支持自动集成推送Yapi、Torna项目显示后台管理功能。 4、根据自动化api实现web postman功能。 5、实现根据自动化api任意编排自动化测试功能,提供自动化测试接口报错入参,日志等功能。 6、提供java网关功能。限流、黑白名单、api管理等功能。 7、提供多个api接口数据marge功能。 8、各业务系统所有bean依赖关系查看,提供系统公共组件、代码优化、业务流程优化时影响范围检索功能。 #### 软件架构 软件架构说明 使用SpringBoot,SpringCloud,java反射,MybatisPlus,Mysql。 项目包含模块功能 api-admin:api管理服务平台,api版本管理,通过对外暴露saveApiList服务保存更新获取的自动化api集合,Yapi、Torna接口推送功能。 api-annotation:自定义注解功能项目。 api-common:通用功能实现包含Dozer对象转换工具、Json转换工具等。 api-core:核心功能实现,运用了工厂、模板方法、建造者、责任链递归泛型解析VO、Spring RestController、泛型解析工具等多种工具类,提供解析RestController入参、出参ESTful API 接口规范功能,目前对接了Yapi、Torna接口推送。 api-framework:通用组件公共抽象模块。 api-gateway: java网关功能。开发中 api-mapping:通过ApplicationReadyEvent容器初始化完成事件,初始化解析Spring Controller。 api-openapi:开放平台openapi功能。开发中 api-rpc: 通过SPI配置支持auto-api-spring-starter 集成SpringBoot功能、Http接入功能。 api-service api服务治理 api-history 服务调用历史 api-limit api服务限流熔断降级 #### 安装教程 1. 安装auto_api.sql 2. 运行api-admin 3. 通过api-rpc http方式引入jar解析引擎 1、新增 com.auto.api.mapping.listener.MappingInitListener com.auto.api.mapping.filter.MockFilter bean配置 2. application.properties 资源文件中引入 #是否进行api解析 auto.api.mapping=true #是否使用mock数据 auto.api.mock=false 3. 启动类scanBasePackages 新增"com.auto.api"包扫描路径 4. 通过api-rpc auto-api-spring-starter方式引入jar解析引擎 1. application.properties 资源文件中引入 #是否进行api解析 auto.api.mapping=true #是否使用mock数据 auto.api.mock=false 2. 启动类scanBasePackages 新增"com.auto.api"包扫描路径 #### 使用说明 1. 对接fork Tarna 地址: https://gitee.com/legouw/torna 2、前端使用需要先运行Torna,创建平台,创建项目,在module表中定义好torna与aoto-api的对接token 3、运行项目,之后所有api维护操作就跟随代码自动维护更新了。 4、对接Yapi 在api_info 表param_api_json、result_api_json 字段用于对接入参与出参json,直接拷贝就可以在Yapi平台使用
更多推荐
所有评论(0)