template.welcome.email adlı bir json alanım var ve bu alanın sunucudan yanıtta olup olmadığını kontrol eden bir birim testi yazıyorum ancak bir çıkış bulamıyorum alan adına noktalar için. noktalar yolları gibi yorumlanır çünküJsonPath JUnit noktalar için çıkış karakteri
@Test
public void testEmailTemplates() throws Exception {
mockMvc.perform(get("/emailTemplates")
.contentType(MediaType.APPLICATION_JSON)
.locale(Locale.UK)
.accept(MediaType.APPLICATION_JSON))
.andDo(print())
.andExpect(status().isOk())
.andExpect(jsonPath("$.template.welcome.email").exists())
.andExpect(redirectedUrl(null))
.andExpect(forwardedUrl(null));
}
Ama şu istisna olsun:
java.lang.AssertionError: No value for JSON path: $.template.welcome.email, exception: invalid path
at org.springframework.test.util.JsonPathExpectationsHelper.evaluateJsonPath(JsonPathExpectationsHelper.java:74)
at org.springframework.test.util.JsonPathExpectationsHelper.exists(JsonPathExpectationsHelper.java:121)
at org.springframework.test.web.servlet.result.JsonPathResultMatchers$3.match(JsonPathResultMatchers.java:77)
at org.springframework.test.web.servlet.MockMvc$1.andExpect(MockMvc.java:141)
at
Eğer jsonPath için herhangi bir kaçış karakterini biliyor musunuz benim testin kodudur?
Aynı düşüncelerim var, bakalım kimsenin zekice bir fikri varsa .. – daniele
Ohhh, işte bu yüzden benim yolum (bir kaçış eğik çizgi ile) çalışmıyor! – Tom
Evet, Mümkün, bkz. Ida'nun cevabı –