Как проверить загрузку файлов в докер-контейнерах без томов? - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь настроить автоматический тестовый костюм, используя селеновую сетку, док-контейнеры, jenkins и aws-ecs.

Селеновая сетка будет настроена с использованием aws-ecs. Автоматизированные тесты будут выполнены как часть конвейера Дженкинса.

Проблема в том, что набор тестов содержит файл загрузки тестов. Я не могу использовать тома , так как контейнеры будут запущены на другом компьютере, чем рабочая область jenkins.

Можно ли как-то утверждать, что файл загружен? Может ли экземпляр браузера, запущенный в контейнере, предоставить подтверждение того, что загрузка файла началась?

Ниже приведена пошаговая инструкция, которую я использовал для проверки загрузки файла при локальной настройке.

@And("a file called (.*) should be downloaded to my downloads directory")
public void verifyFileDownload(String filename) throws InterruptedException {
    Thread.sleep(1000);
    List<String> results = new ArrayList<String>();
    File[] files = new File(DOWNLOAD_DIRECTORY).listFiles();
    for (File file : files) {
        if (file.isFile()) {
            results.add(file.getName());
        }
    }
    assertThat(results.contains(filename), is(true));
}

1 Ответ

1 голос
/ 17 мая 2019

Вы можете зайти внутрь своего контейнера.Если вы знаете, на каком сервере запускается ваш контейнер, вы можете запустить

docker exec -it [container_name] /bin/bash

и проверить вручную, находится ли здесь ваш файл.

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