springboot整合restdocs輸出介面文件
1、pom檔案新增restdocs
<dependency>
<groupId>org.springframework.restdocs</groupId>
<artifactId>spring-restdocs-mockmvc</artifactId>
<scope>test</scope>
</dependency>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>1.5.8</version>
<executions>
<execution>
<id>generate-docs</id>
<phase>prepare-package</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<backend>html</backend>
<doctype>book</doctype>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.springframework.restdocs</groupId>
<artifactId>spring-restdocs-asciidoctor</artifactId>
<version>${spring-restdocs.version}</version>
</dependency>
</dependencies>
</plugin>
2、在test包下新建controller
@RunWith(SpringRunner.class)
@SpringBootTestpublic class ApiBaseController {
@Rule
public JUnitRestDocumentation restDocumentation = new JUnitRestDocumentation();
public MockMvc mockMvc;
@Autowired
private WebApplicationContext context;
@Before
public void setUp() {
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.context)
.apply(documentationConfiguration(this.restDocumentation))
.build();
}
}
3、新建單元測試
public class TestController extends ApiBaseController {
@Test
public void test() throws Exception {
super.mockMvc.perform(post("/test").param("aaa", "bbb")
.contentType(MediaType.APPLICATION_JSON))
.andDo(document("{ClassName}/{methodName}",
preprocessRequest(prettyPrint()), preprocessResponse(prettyPrint()),
requestParameters(parameterWithName("aaa").description("查詢名字"))));
}
}
4、執行後會在targetgenerated-snippets生成adoc檔案
5、在main下新建asciidoc包,新建index.adoc 拼接已經生成的adoc
= API:toc:
left:toclevels: 4
[[order-it]]
== 1. 訂單介面
[[order-query]]
=== 訂單查詢
operation::TestController/test[snippets='curl-request,http-request']
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2558/viewspace-2824780/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- springMVC整合swagger2來輸出介面文件SpringMVCSwagger
- 企業級SpringBoot教程 (十)用spring Restdocs建立API文件Spring BootRESTAPI
- Springboot系列(七) 整合介面文件swagger,使用,測試Spring BootSwagger
- SpringBoot3整合SpringDoc實現線上介面文件Spring Boot
- SpringBoot3整合Knife4j生成介面文件Spring Boot
- SpringBoot整合Swagger2,再也不用維護介面文件了!Spring BootSwagger
- SpringBoot整合Mongodb文件資料庫Spring BootMongoDB資料庫
- WPS 文件分享介面整合小工具
- Spring Boot 整合 Swagger 構建介面文件Spring BootSwagger
- SpringBoot整合Redis開發RESTful API介面Spring BootRedisRESTAPI
- SpringBoot2.6.x及以上版本整合swagger文件Spring BootSwagger
- spring-boot-route(五)整合Swagger生成介面文件SpringbootSwagger
- spring-boot-route(六)整合JApiDocs生成介面文件SpringbootAPI
- 後端整合 Swagger + Knife4j 介面文件後端Swagger
- SpringBoot 整合 RabbitMQ 實現訊息可靠傳輸Spring BootMQ
- 專案整合管理主要輸入、工具、輸出
- C#通用文件API介面整合示例-合同識別-智慧文件識別C#API
- Netty整合SpringBoot並使用Protobuf進行資料傳輸NettySpring Boot
- SpringBoot整合mybatis出現時區問題Spring BootMyBatis
- 用Swagger2markup匯出介面文件Swagger
- SpringBoot整合超好用的API視覺化介面工具swaggerSpring BootAPI視覺化Swagger
- SpringBoot2 整合 Swagger2文件 使用BootstrapUI頁面Spring BootSwaggerUI
- SpringBoot(19)---SpringBoot整合ApolloSpring Boot
- SpringBoot(17)---SpringBoot整合RocketMQSpring BootMQ
- SpringBoot(十六)_springboot整合JasperReSpring Boot
- SpringBoot整合系列-整合JPASpring Boot
- SpringBoot介面 - 如何生成介面文件之非侵入方式(通過註釋生成)Smart-Doc?Spring Boot
- SpringBoot整合Spring security JWT實現介面許可權認證Spring BootJWT
- SpringBoot 整合 rabbitmqSpring BootMQ
- SpringBoot 整合 apolloSpring Boot
- SpringBoot 整合 elkSpring Boot
- SpringBoot 整合 elasticsearchSpring BootElasticsearch
- SpringBoot整合elasticsearchSpring BootElasticsearch
- RocketMQ整合SpringBootMQSpring Boot
- springboot整合redis?Spring BootRedis
- SpringBoot整合MinIOSpring Boot
- Springboot整合pagehelperSpring Boot
- ElasticSearch 整合 SpringBootElasticsearchSpring Boot