1

Spring の MockMVC を使用して記述しているテストのリクエスト パラメーターとして JSON をエンコードしようと数時間試みましたが、うまくいきませんでした。

私のテストは次のようになります

@Before
public void setUp() {       
    mockMvc = MockMvcBuilders.standaloneSetup(new TestController())
            .build();
}

@Test
public void shouldReturnJSONGeneratedByView() throws Exception {
    String sampleJson = "{\"key\":\"value\"}";

    String json = UriComponentsBuilder.newInstance()
    .path(sampleJson)
    .build().encode().toUriString();

    mockMvc.perform(MockMvcRequestBuilders.get("/Node?json="+json))
    .andExpect(status().isOk());
}

しかし、コントローラーに到達する文字列はまだエンコードされているため ("%7B%22key%22:%22value%22%7D")、JSON として逆シリアル化することはできません。

Spring にエンコードされたパラメーターを理解させるために何が欠けていますか?

助けてくれてありがとう

4

1 に答える 1