如何使用Spring Rest Doc记录错误消息

时间:2016-09-28 07:17:04

标签: spring rest spring-mvc documentation spring-restdocs

我在Spring mvc test中使用Spring rest doc来生成一个安静的文档。现在我正在尝试描述资源上可能出现的错误消息,但是我找不到任何可以帮助我在spring文档中的内容。

我想要实现的内容类似于http://apidocjs.com/example/

的错误4xx部分

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

只需创建一个故意生成错误响应的测试。并像使用任何其他Spring Rest Docs测试那样记录字段。

@Test
    public void errorExample() throws Exception {
        RestDocumentationResultHandler docs = document("Error Response",
                preprocessRequest(prettyPrint()),
                preprocessResponse(prettyPrint()),
                responseFields(
                        fieldWithPath("status").optional().type("Integer").description("Application status field."),
                        fieldWithPath("errorMsg").type("String").description("A global description of the cause of the error")        

                )
        );


        AppConfig req = getAppConfigReq(null, null, null);

        ResultActions result = this.mockMvc.perform(  post("/SomeAPICall/")
                .contentType(MediaType.APPLICATION_JSON)
                .accept(MediaType.APPLICATION_JSON)
                .content(this.objectMapper.writeValueAsString(req))
        );
        result.andExpect(status().is(401));
        result.andDo(docs);
    }