org.openqa.selenium.WebDriverException:未知命令:uploadFile
我正在尝试使用Safari驱动程序上载文件 这是我的密码:org.openqa.selenium.WebDriverException:未知命令:uploadFile,selenium,safari,selenium-webdriver,Selenium,Safari,Selenium Webdriver,我正在尝试使用Safari驱动程序上载文件 这是我的密码: DesiredCapabilities browserCapabillities = DesiredCapabilities.safari(); RemoteWebDriver driver = new SafariDriver(browserCapabillities); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.get("myApp
DesiredCapabilities browserCapabillities = DesiredCapabilities.safari();
RemoteWebDriver driver = new SafariDriver(browserCapabillities);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.get("myAppURL");
WebElement upload = driver.findElementByXPath("//input[@id='fileElementId']");
RemoteWebElement webElement = ((RemoteWebElement) upload);
LocalFileDetector detector = new LocalFileDetector();
webElement.setFileDetector(detector);
File f = detector.getLocalFile("myFilePath");
upload.sendKeys(f.getAbsolutePath()); // Generating exception:
// org.openqa.selenium.WebDriverException: Unknown command: uploadFile
driver.findElement(By.id("uploadButton")).click();
现在唯一适合我的是AppleScript。幸亏但有了苹果脚本,我不得不让我的机器解锁
我觉得LocalFileDetector是一个更好的解决方案,因为即使机器被锁定,我也希望运行我的测试
我不确定以下是否有帮助
driver.setFileDetector(new LocalFileDetector()); // I am getting
// org.openqa.selenium.WebDriverException: Setting the file detector only
// works on remote webdriver instances obtained via RemoteWebDriver
改变
RemoteWebDriver driver = new SafariDriver(browserCapabillities);
到
有关示例代码,请参阅帖子。谢谢您的建议。我添加了hub。现在也不例外。sendKeys仍然没有更新文件路径。仅供参考,我正在使用Jasny的文件上传和Bootstrap3组件。
RemoteWebDriver driver = new RemoteWebDriver(urlofhub,browserCapabillities);