我在Kotlin中进行了Sping Boot 测试,我想检查POST请求的响应。响应包含每次生成的UUID,我无法硬编码用于测试。
如何避免在测试中检查此UUID,但确保响应的格式正确?
例如,我的比较如下所示。我想确认userUUID
的密钥是否存在,但不检查它的值。
val response = mvc
.perform(requestBuilder)
.andExpect(status().isOk())
.andExpect(content().string("""{"userUUID":"DONT_CARE","status":"Completed"}"""))
1条答案
按热度按时间mwngjboj1#
content().string()
不仅接受字符串来检查相等性,它还可以接受hamcrest匹配器的示例,例如containsString(str: String)
匹配器,您可以使用它或提供您自己的实现,它使用正则表达式来检查结果是否正确。有关文档,请参阅此处:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/test/web/servlet/result/MockMvcResultMatchers.htmlhttps://hamcrest.org/JavaHamcrest/javadoc/1.3/org/hamcrest/Matchers.html