Всем привет! На девайс закидываю файл через код, но после выполнения pushFile, на девайсе нет файла, который я пушаю
Может не везде можно закинуть.
Попробуйте эту статью глянуть
Попробовал запушить на реальном устройстве, всё получилось) Спасибо)
Оказывается, всё загружается) Смотрел не туда
И немного переделал код, теперь универсально загружает на все девайсы и эмуляторы)
@SneakyThrows
@Step("Загружаем картинку на девайс")
public void uploadFileToDevice() {
File file = new File(MainChatPage.class.getClassLoader().getResource("files/test.jpg").toURI());
if(file.exists()) {
if (isAndroid()) {
((AndroidDriver) driver).pushFile("/storage/emulated/0/DCIM/test.jpg", file);
} else if (isIOS()) {
((IOSDriver) driver).pushFile("/private/var/mobile/Media/DCIM/IMG_0001.JPG", file);
}
}
}
@Vladislav_Sobol может знаете, есть ли универсальный метод выбора изображения на Android, когда нажимаем кнопку upload? А то у многих девайсов отличается интерфейс
Если вы имеете ввиду тест типа
- В приложении нажать кнопку “Upload”
- Открывается бибилиотека на девайсе и тут вам уже нужно взаимодействовать не со своей аппкой, а с интерфесом девайса ?
Универсально способа пожалуй нет. У нас на проекте такой проблемы не возникало потомучто девайсы были одинаковые или почти одинаковые. Думаю и у вас если вы делаете локальную ферму девайсов будут одиноаковые ну или несколько разных девайсов, в самом худшем случае напишите IF … ELSE…
@pbezpal5
Спасибо)
Здравствуйте. Столкнулся с похожей проблемой, только в iOS. Цель - загрузить несколько файлов (.doc, .pdf, .xls) на устройство (iphone 11) в папку “Загрузки” и затем открывать их из тестируемого приложения. В remotePath уже что только не указывал - от “@com.apple.DocumentsApp:Загрузки/file.doc” до банального “file.doc”. Также попробовал указать путь из Вашего примера ("/private/var/mobile/Media/DCIM/file.doc") - все безрезультатно, в “Загрузках” файл не появляется. Пробовал менять “Загрузки” на “Download” и “Downloads” - без изменений.
Единственный раз удалось запушить файл когда указал в качестве контейнера bundleID тестируемого приложения (pushFile("@com.app.under.test:documents/file.doc"). Но файл можно увидеть только из Finder’а, на самом девайсе его не видно.
Не подскажете, что я не так делаю?