Я пытаюсь выяснить, как получить файл для загрузки в моем тесте.Мое приложение не совсем соответствует рабочему процессу, описанному в приложении для setFilesToUpload
, поэтому у меня возникли проблемы.
Чтобы загрузить файл в мое приложение, вы нажимаете кнопку «Загрузить», которая открывает собственное диалоговое окно.Нажав кнопку «ОК» в диалоговом окне, вы перейдете к обновленной версии страницы индекса, где вы сможете увидеть заголовок загруженного вами файла.
Я обнаружил, что в DOM есть скрытый элемент input
, которыйиспользуется для загрузки.Я думал, что у меня работает тест, пока я не попытался добавить expect
для последней части рабочего процесса, чтобы убедиться, что загрузка действительно сработала, и в этом случае тест не пройден.
Вот содержимое теста:
await t
// other stuff to get to page with the upload button
.click(Selector('a').withAttribute('title','Project One'))
.setNativeDialogHandler(() => true)
.click(Selector('.upload_one'))
.setFilesToUpload(Selector('input').withAttribute('type','file'),
'/path/to/movie.MOV')
.expect(Selector('.media_name').withText('movie').exists).ok()
Тест «проходит» без последней строки, но загрузка на самом деле не происходит.С включенной последней строкой я никогда не вижу родного диалога в тесте.Это делает Waiting for an Assertion Execution
, а затем просто терпит неудачу, поэтому я не могу точно сказать, что происходит не так.Любая помощь будет высоко ценится!