私は、オブジェクトのリストを返すエンドポイントをテストしています。 現在、以下のコードに従って各要素を順番にテストしています。 明確にするために、コードを省略しています。私はmockMVCですが、.andExpect()でテストされている結果をループすることはできますか?
多くの要素と多くの属性があります。このコードは、私が.andExpect(周りにループをラップすることができます長いと醜い
public void testXxxOK() throws URISyntaxException, Exception {
when(thisCall).thenReturn(mockThis());
when(thatCall).thenReturn(mockThat());
mockMvc
.perform(get(relativePath(
"/getStuffRestEndPoint?argument1=123&argument2=01-11-2001%200101Z"))
.accept(MediaType.APPLICATION_JSON))
.andExpect(status().isOk()).andExpect(content().contentType(APPLICATIONJSON))
.andExpect(jsonPath("$.dataList", hasSize(3)))
.andExpect(jsonPath("$.dataList[0].parameter1", is(0)))
.andExpect(jsonPath("$.dataList[0].parameter2", is("name0")))
.andExpect(jsonPath("$.dataList[1].parameter1", is(1)))
.andExpect(jsonPath("$.dataList[1].parameter2", is("name0")))
.andExpect(jsonPath("$.dataList[2].parameter1", is(2)))
.andExpect(jsonPath("$.dataList[2].parameter2", is("name0")))
}
を得ることができます)私は、パラメータの1つだけのリストを持っているように呼び出しますか?これが私の言うことです。これはどうすればいいですか?
for (i=0; i<size; i++)
{
.andExpect(jsonPath("$.dataList[i].parameter1", is(i)))
.andExpect(jsonPath("$.dataList[i].parameter2", is("name0")))
}