Периодическая ошибка при тестировании контроллера

Вот код самого теста

public class ExControllerIT extends AbstractWireMockIT {
  @Autowired
  private MockMvc mockMvc;

  @Test
  public void testRc() throws Exception {
    stub("путь к файлу IN.json", "c25dd67d-2c31-4055-9a4b-62dad9b7eec1");

    mockMvc.perform(MockMvcRequestBuilders.get("/api/v1")
        .content(bytesFromFile(ExControllerIT.class, "путь к файлу request.json"))
        .contentType(MediaType.APPLICATION_JSON)
        .accept(MediaType.APPLICATION_JSON))
        .andDo(print())
        .andExpect(status().isOk());
    Assertions.assertTrue(true);
  }

  private void stub(String jsonFileName, String Id) throws IOException {
    final String json = stringFromFile(ExControllerIT.class, jsonFileName);
    wiremockServer.stubFor(
        get("/manager/api/v1/" + Id)
            .willReturn(
                aResponse()
                    .withStatus(HttpStatus.OK.value())
                    .withHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE)
                    .withBody(json)));
  }


public byte[] bytesFromFile(Class<?> testClass, String path) throws IOException {
    return Files.readAllBytes(ResourceUtils.getFile(testClass.getResource(path)).toPath());
  }

  public String stringFromFile(Class<?> testClass, String path) throws IOException {
    return new String(bytesFromFile(testClass, path), StandardCharsets.UTF_8);
  }
}

Тест проходит, но один раз на 20, он падает и выдает ошибку

[ERROR] Failures: 
[ERROR] ExControllerIT.testRc:67 Status expected:<200> but was:<500>

Данные остаются не изменными, но тест по какой-то причине падает. Я не понимаю, почему это может происходить и как обнаружить ошибку?


Ответы (0 шт):