Spring REST Docs
Document RESTful services by combining hand-written documentation with auto-generated snippets produced with Spring MVC Test or WebTestClient.
docs.spring.io
틀린 해석이 있다면 알려주세요 감사합니다 😌
Setting up Your JUnit 5 Tests
@ExtendWith(RestDocumentationExtension.class)
public class JUnit5ExampleTests {
일반적인 Spring Application TEST 시
@ExtendWith({RestDocumentationExtension.class, SpringExtension.class})
public class JUnit5ExampleTests {
빌드 도구에 따라 자동 구성됨
Build toolOutput directory
Maven | target/generated-snippets |
Gradle | build/generated-snippets |
JUnit 5.1 을 사용하는 경우 출력 경로를 제공하여 기본값을 재정의할 수 있다
public class JUnit5ExampleTests {
@RegisterExtension
final RestDocumentationExtension restDocumentation = new RestDocumentationExtension ("custom");
}
Next, you must provide a @BeforeEach method to configure MockMvc or WebTestClient, or REST Assured.
private MockMvc mockMvc;
@BeforeEach
void setUp(WebApplicationContext webApplicationContext, RestDocumentationContextProvider restDocumentation) {
this.mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext)
.apply(documentationConfiguration(restDocumentation))
.build();
}
The MockMvc instance is configured by using a MockMvcRestDocumentationConfigurer. You can obtain an instance of this class from the static documentationConfiguration() method on org.springframework.restdocs.mockmvc.MockMvcRestDocumentation. |
MockMvc 인스턴스를 사용함
https://docs.spring.io/spring-restdocs/docs/current/reference/htmlsingle/#configuration
Spring REST Docs
Document RESTful services by combining hand-written documentation with auto-generated snippets produced with Spring MVC Test or WebTestClient.
docs.spring.io
JUnit4 는 다루지않겠음
Invoking the RESTful Service
RESTful Service 호출
this.mockMvc.perform(get("/").accept(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andDo(document("index"));
By default, six snippets are written:
- <output-directory>/index/curl-request.adoc
- <output-directory>/index/http-request.adoc
- <output-directory>/index/http-response.adoc
- <output-directory>/index/httpie-request.adoc
- <output-directory>/index/request-body.adoc
- <output-directory>/index/response-body.adoc
GitHub - spring-projects/spring-restdocs-samples
Contribute to spring-projects/spring-restdocs-samples development by creating an account on GitHub.
github.com
샘플코드도 있다
'Web > spring' 카테고리의 다른 글
[Spring Framework integration] 6.Cache Abstraction (2) (0) | 2023.02.28 |
---|---|
[Spring Framework integration] 6.Cache Abstraction (1) (0) | 2023.02.27 |
[Spring data] JPA repositories - Projection (0) | 2023.02.26 |
[Spring Framework Core] 4.3. Language Reference (3) (0) | 2023.02.24 |
[Spring Framework Core] 4.3. Language Reference (2) (0) | 2023.02.23 |