Kotlinspring Boot 测试与变量数据比较

ogsagwnx  于 2023-06-24  发布在  Kotlin
关注(0)|答案(1)|浏览(133)

我在Kotlin中进行了Sping Boot 测试,我想检查POST请求的响应。响应包含每次生成的UUID,我无法硬编码用于测试。
如何避免在测试中检查此UUID,但确保响应的格式正确?
例如,我的比较如下所示。我想确认userUUID的密钥是否存在,但不检查它的值。

val response = mvc
        .perform(requestBuilder)
        .andExpect(status().isOk())
        .andExpect(content().string("""{"userUUID":"DONT_CARE","status":"Completed"}"""))
mwngjboj

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

相关问题