Как проверить загрузку файлов с уверенностью в Spring? - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь создать тест для загрузки mp3-файла с моим API. Я не могу понять, как это сделать.

Мой файл testsound.mp3 находится в папке ресурсов моего проекта.

Мой код API:

@PostMapping(value = "/tracks", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public Track create(@RequestParam("file") MultipartFile file) throws IOException, InvalidDataException, UnsupportedTagException {
    return trackService.createTrack(file);
}

Мой тестовый код:

@Test
public void eTestUploadTrack() throws IOException {
    File file = new ClassPathResource("testsound.mp3").getFile();

    trackId = given()
            .header("X-Authorization", token)
            .param("file", file)
            .post("/tracks")
            .then()
            .statusCode(200)
            .extract()
            .path("id").toString();
}

Структура моего проекта:

структура проекта

Надеюсь, кто-нибудь может мне помочь!

Заранее спасибо!

1 Ответ

0 голосов
/ 15 января 2019

Вы можете использовать метод multipart () для проверки загрузки файла.

Рабочий код:

    @Test
public void eTestUploadTrack() throws IOException {
    File file = new ClassPathResource("testsound.mp3").getFile();

    trackId = given()
            .header("X-Authorization", token)
            .contentType(MediaType.MULTIPART_FORM_DATA_VALUE)
            .multiPart("file", file)
            .post("/tracks")
            .then()
            .statusCode(200)
            .extract()
            .path("id").toString();
}

Для дальнейшего чтения перейдите по ссылкам ниже:

  1. Пример 1
  2. RestAssured JUNIT
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...