Загрузка файла в Testcafe со скрытым вводом - PullRequest
3 голосов
/ 17 мая 2019

Я хочу проверить папку загрузки / несколько файлов, используя testcafe.Он имеет пару шагов для загрузки файлов.

  • Шаг - 1: Нажмите кнопку просмотра файлов, чтобы выбрать файлы
  • Шаг - 2: Поле собственного подтверждения для подтверждения загрузки
  • Шаг - 3: Нажмите наКнопка загрузки для загрузки файлов

В HTML-коде ввод [type = file] скрыт.HTML-код:

<div class="col-md-12">
    <input type="button" class="btn btn-primary btn-exec" value="Select Files" id="fileBrowseBtn">
    <input type="file" id="selectFiles" webkitdirectory="" style="display: none">
</div>

Я пытался использовать следующий код, но он не работал вообще.

 await t
.click(Selector('#fileBrowseBtn'))
.setNativeDialogHandler(() => true)
.setFilesToUpload(Selector('input').withAttribute('type','file'), [
            './uploads/1.jpg',
            './uploads/2.jpg',
            './uploads/3.jpg'
        ])
.setNativeDialogHandler(() => true)
.click(Selector('#uploadWizard').find('button').withText('Upload'))

Может кто-нибудь помочь мне с работающим примером?Я много пробовал, но, может быть, я что-то пропустил.Заранее спасибо.

1 Ответ

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

В соответствии с примером , вам не следует открывать диалоговое окно «Выбор файла».

Попробуйте упростить ваш код следующим образом:

await t
.setFilesToUpload(Selector('input').withAttribute('type','file'), [
            './uploads/1.jpg',
            './uploads/2.jpg',
            './uploads/3.jpg'
        ])
.click(Selector('#uploadWizard').find('button').withText('Upload'))
...