theme: mk-cute

这是我参与更文挑战的第11天,活动详情查看: 更文挑战

Ydoc1.0.5支持swagger页面和邮件和web报告

在1.0.3的时候只有在开启了swagger-native时才能显示swagger页面,在1.0.5,我们可以使用YDoc方式的注解来生成swagger文档的内容了。

如何生成?

源码已经开源到github欢迎一起贡献源码,喜欢点个Star支持下

依赖一下(依赖不到去github下载源码,install到自己本地仓库,上传到中央仓库有延迟)

<dependency> <groupId>com.github.nobugboy</groupId> <artifactId>ydoc-spring-boot-starter</artifactId> <version>1.0.6</version> </dependency>

swagger的写法我们都很熟悉,比如我们要生成一个接口的文档信息,只要定义如下方式即可 @RestController @Api(tags = "用户相关") public class TestController { @ApiOperation("获取用户信息") @PostMapping(value = "/get") public User test1(@RequestBody User user){ System.out.println(user); return user; } } 由于我这个项目没有配置扫包不能开启native模式来生成swagger,所以我们直接看一下YDoc是如何支持生swagger页面的,只要简单改造一下即可,是不是比原生的swagger注解方式简洁多了 @RestController(value = "用户相关") public class TestController { @PostMapping(value = "/get",name = "获取用户信息") public User test1(@RequestBody User user){ System.out.println(user); return user; } } 然后我们来修改配置类和配置文件 ```

在启动类上加注解

@EnableSwagger2

配置文件中加一条配置

ydoc.enable=true ``` 然后我们来启动一下程序,查看文档是否已经生成完毕,我这里是8080端口,所以访问http://localhost:8080/doc.html即可 , 文档已经生完毕,不需要额外的扫包和大量的注解,也可以生成和swagger一样的文档

image.png

自动化测试邮件以及web页面(不使用YApi无法使用自动化测试)

我们先去YApi上创建一个名为devtest的测试集合,并导入一些接口

image.png

自动化测试相关的配置偏多一些 ```

YAPI中项目的id

ydoc.id=18

YAPI登录所使用的邮箱(邮件的发送者也是该邮箱)

ydoc.yapi-user-email=xxxxx@163.com

YAPI登录所使用的m密码

ydoc.yapi-user-password=admin

YAPI中配置的自动化测试集合名称,可以配置多个

ydoc.test-name=devtest

开启自动化测试

ydoc.auto-test=true

yapi-user-email的pop3smtp密码

ydoc.email-password=xxxxxx

发送到哪些邮箱,可以多个

ydoc.to-emails=123232@163.com,1213@qq.com

邮箱的域名

ydoc.email-host=smtp.163.com 配置好之后,我们直接启动程序,可以看到控制台已经打印了信息 2021-06-25 12:00:43.952 INFO 90109 --- [ task-1] com.github.ydoc.config.YapiApi : YDoc自动化测试[devtest]如下: 2021-06-25 12:00:43.952 INFO 90109 --- [ task-1] com.github.ydoc.config.YapiApi : api: [获取用户信息] path: [/get] 2021-06-25 12:00:43.952 INFO 90109 --- [ task-1] com.github.ydoc.config.YapiApi : 一共 1 测试用例,全部验证通过消耗时间:0.03s ``` 查看邮箱,邮件内对html内联样式支持不好,所有看到的效果不是很好看

image.png

同时我们支持使用web方式查看,访问http://localhost:8080/test-page 即可,这样的页面是比较好看的

image.png

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐