Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 请参阅文件上载测试_Javascript_Selenium_File Upload - Fatal编程技术网

Javascript 请参阅文件上载测试

Javascript 请参阅文件上载测试,javascript,selenium,file-upload,Javascript,Selenium,File Upload,我能够在OneDrive(登录帐户)上访问HTML标记,这有助于上传文件 driver.findElement(By.css("div[class='ContextualMenu-uploadInput']")); 将.click()应用于此,我可以获得文件选择弹出窗口,这意味着我可以选择要上载的文件 有很多文章提到如何使用selenium上传文件 然而,在尝试了无数通过本地路径上传文件的示例之后,或者使用了外部服务(如SauceLabs),我无法上传文件 Selenium是否有办法处理文件选

我能够在OneDrive(登录帐户)上访问HTML标记,这有助于上传文件

driver.findElement(By.css("div[class='ContextualMenu-uploadInput']"));
.click()
应用于此,我可以获得文件选择弹出窗口,这意味着我可以选择要上载的文件

有很多文章提到如何使用selenium上传文件

然而,在尝试了无数通过本地路径上传文件的示例之后,或者使用了外部服务(如SauceLabs),我无法上传文件

Selenium是否有办法处理文件选择弹出窗口

任何建议都会大有帮助

此外,请按照以下内容进行全面了解

代码如下:

/**
 * Simple google search test
 */

test.describe('One Drive Test', function() {
  var driver;

  test.before(function () {
    driver = new Driver();
  });

  test.after(function () {
    driver.quit();
  });

  test.it('should append query to title', function() {
    driver.get('https://onedrive.live.com/');
    var srch = driver.wait(until.elementLocated(By.css("i[class='od-IconGlyph ms-Icon ms-Icon--Upload od-IconGlyph--visible']")), 10000);

    srch.click();

    var getFileUpl = driver.wait(until.elementLocated(By.css("div[class='ContextualMenu-uploadInput']")), 10000);

    driver.sleep(5000);
  });

});

你能提供一个具体的,我们可以看看吗?这是通过SO.@A.Kootstra获得最佳答案的方法。请在问题中找到它。我添加了它,想写一行代码,帮助我上传文件到那个标签上。ThanksSelenium无法与对话框交互。这是一个独立于浏览器的操作系统对话框。@RonNorris谢谢。正是我所期望的。关于上传文件还有其他的建议吗?@vedlociraptor,你知道Selenium不能与桌面窗口交互。相反,您可以使用AutoIT代码选择/单击/关闭dekstop窗口