Загрузить несколько файлов/изображений с помощью команды newman в Jenkins

Запуск API Postman с помощью команды Newman, которая в настоящее время загружает один файл. Мое требование - загрузить несколько файлов, используя один и тот же API.

Мой текущий код, который загружает один файл, выглядит так: -

"method": "POST",
                    "header": [],
                    "body": {
                        "mode": "formdata",
                        "formdata": [
                            {
                                "key": "file",
                                "description": "Jpeg image or video (mov or mp4)",
                                "type": "file",
                                "src": "C:\\Test\\abc.jpeg"
                            }

                        ]
                    }

В этом же коде я хочу загрузить несколько файлов. Нужно какое-то руководство о том, как я могу этого достичь.


person Sjain    schedule 31.10.2018    source источник


Ответы (1)


Я отправляю несколько файлов в postman/newman, отправляя несколько запросов POST - один файл на запрос. Таким образом, вы можете отправлять много файлов, выполняя один набор запросов почтальона.

Изменить: Пример формы с 2 файловыми полями:

"method": "POST",
                "header": [],
                "body": {
                    "mode": "formdata",
                    "formdata": [
                        {
                            "key": "myFile1",
                            "description": "Jpeg image or video (mov or mp4)",
                            "type": "file",
                            "src": "C:\\Test\\abc.jpeg"
                        },
                        {
                            "key": "myFile2",
                            "description": "Jpeg image or video (mov or mp4)",
                            "type": "file",
                            "src": "C:\\Test\\def.jpeg"
                        }

                    ]
                }
person gregPi    schedule 31.10.2018
comment
- API в соответствии с бизнес-логикой на моем конце требует загрузки 2 изображений. Поэтому отправка нескольких сообщений здесь не поможет. - person Sjain; 31.10.2018
comment
Если ваш API принимает поле с несколькими файлами внутри одного запроса, вы можете использовать верхний код - person gregPi; 31.10.2018
comment
Пробовал вышеуказанное решение, но затем выдает ошибку - | 'Form param file, file load error: "C:\\Test\\def.jpeg", no such file'. Также попытался объединить другой файл, сделав src массивом "src": ["C:\\Test\\abc.jpeg","C:\\Test\\def.jpeg"], но затем выдает ошибку `| 'Параметр формы file, ошибка загрузки файла: недействителен или отсутствует | g источник файла'` - person Sjain; 01.11.2018
comment
1) Ключ должен быть другим - обновите пример 2) Если это не поможет: Мой пример - единственный правильный синтаксис для данных формы. Вы пытались отправить запрос в основном от Почтальона для теста (без Ньюмана)? Работает ли в Postman с одним и двумя файлами? - person gregPi; 02.11.2018
comment
Пробовал с разными ключами, но проблема та же. Я выполнил тот же API в пользовательском интерфейсе Postman, отправив/выбрав 2 файла одновременно, и все прошло хорошо. - person Sjain; 02.11.2018
comment
Ваше первое решение сработало для меня (используйте многопостовый запрос для загрузки нескольких изображений). Я завершил обсуждение этого поста с моим разработчиком. Во-вторых, я также исправил скрипт, чтобы использовать jpeg (расширение, с которым файл был сохранен в папке) ранее в моем скрипте я использовал jpg. - person Sjain; 05.11.2018