swagger接口管理框架
1、接口测试管理方案在项目中的应用
- 前端工程师:希望后端工程师提供联调环境用于前端开发,这样可以同步开发
- 后端工程师:还没开始开发,哪有联调环境?
- 后端工程师:希望前端工程师给个调用端测试下后端服务
- 前端工程师:还没开始开发,哪有调用端?
- 所有人(All):测试工程师在哪,你们有没有办法?
接口管理需求
- 接口约定
- 接口文档
- 接口 stub
- 接口 client
- 接口测试用例
2、 Swagger 的开源工具集
体验地址
- open api specification:api 描述的配置文件,支持yaml和json两种文件格式;
- swagger editor:交互式的 api 规范编写与文档界面生成工具;
- swagger ui:交互式的在线文档;
- swagger codegen:代码生成工具,用于生成 client sdk 与 stub server;
(1)open api specification
(2)Stub生成
(3)Client生成
(4)swagger codegen
- 根据 yaml 或者 json 格式的 OAS 规范文件, 生成对应的各个语言的 stub 和 client sdk;
- 命令行生成:
#java版的stub生成
swagger-codegen generate -i swagger.json -l java -o java
#运行
mvn spring-boot:run -Dserver.port=8090
A、 Swagger CodeGen 自定义代码模板
- codegen 使用 mustache 模板技术生成各个语言的源代码;
- 文件路径在
modules/swagger-codegen/src/main/resources/${your-language}
;
- 根据模板生成自定义代码
swagger-codegen generate -i swagger.json -l java -o java -t <directory>
;
- 代码模板地址:https://ceshiren.com/t/topic/10408;