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
- SpringBoot整合Swagger2,再也不用維護介面文件了!Spring BootSwagger
- WPS 文件分享介面整合小工具
- SpringBoot整合Redis開發RESTful API介面Spring BootRedisRESTAPI
- Spring Boot 整合 Swagger 構建介面文件Spring BootSwagger
- SpringBoot 整合 RabbitMQ 實現訊息可靠傳輸Spring BootMQ
- spring-boot-route(六)整合JApiDocs生成介面文件SpringbootAPI
- SpringBoot2.6.x及以上版本整合swagger文件Spring BootSwagger
- jsp中輸出word文件的問題JS
- spring-boot-route(五)整合Swagger生成介面文件SpringbootSwagger
- 專案整合管理各過程的輸入輸出關係
- SpringBoot整合mybatis出現時區問題Spring BootMyBatis
- SpringBoot整合系列-整合JPASpring Boot
- Netty整合SpringBoot並使用Protobuf進行資料傳輸NettySpring Boot
- 介面文件生成
- SpringBoot介面 - 如何生成介面文件之非侵入方式(通過註釋生成)Smart-Doc?Spring Boot
- WebApi介面 - 響應輸出xml和jsonWebAPIXMLJSON
- 用Swagger2markup匯出介面文件Swagger
- SpringBoot 整合 rabbitmqSpring BootMQ
- SpringBoot 整合 elkSpring Boot
- SpringBoot 整合 elasticsearchSpring BootElasticsearch
- SpringBoot 整合 apolloSpring Boot
- springboot整合redis?Spring BootRedis
- SpringBoot整合RedisSpring BootRedis
- flowable 整合 springbootSpring Boot
- SpringBoot整合MQTTSpring BootMQQT
- ElasticSearch 整合 SpringBootElasticsearchSpring Boot
- SpringBoot整合ESSpring Boot
- Springboot整合pagehelperSpring Boot
- springBoot整合thymeleafSpring Boot
- SpringBoot 整合 RedisSpring BootRedis
- SpringBoot整合NacosSpring Boot
- SpringBoot 整合 dockerSpring BootDocker
- Springboot整合RabbitMQSpring BootMQ
- springBoot整合flowableSpring Boot
- springboot整合MyBatisSpring BootMyBatis