Selenium网格中的Appium驱动程序信息

时间:2020-10-27 02:52:55

标签: selenium selenium-webdriver protractor appium selenium-grid

我正在尝试在移动设备上测试Web应用程序的上传功能。我使用的设置是连接到硒网格的appium服务器。我可以毫无问题地运行测试。但是,当我尝试测试上传功能时,测试失败。我尝试使用的设置是使用库selenium-webdriver/remote上载chrome文件。我正在使用的代码如下

const remote = require('selenium-webdriver/remote');
browser.getBrowserHandle().setFileDetector(new remote.FileDetector());
const fileToUpload = '../assets/test.jpg';
const absolutePath = require('path').resolve(__dirname, fileToUpload);
await browser.getElementHandle()(by.css('input[type="file"]')).sendKeys(absolutePath);

此解决方案在桌面浏览器上可以正常工作,但在移动设备上会失败,并出现以下错误

Failed: The URL '/wd/hub/session/af75c881-d6be-4c0f-a158-f4ab50e3168e/file' did not map to a valid resource

我假设此处使用的会话ID是Selenium网格发布的会话ID,可能与在appium上为移动会话创建的会话ID不同。由于我拥有的会话ID不正确,因此无法使用appium可用的push_file。有没有办法使remote.FileDetector工作?如果没有,是否有办法通过硒网格从appium获得会话?

0 个答案:

没有答案
相关问题