硒Webdriver文件上传

时间:2018-07-13 10:34:52

标签: selenium selenium-webdriver file-upload automation

如何在弹出窗口中上传文件??

enter image description here

  1. 首先我要单击ACT按钮
  2. 然后将显示一个弹出窗口 3.然后要在弹出窗口中单击文件上传按钮后,在该弹出窗口中上传文件

enter image description here

3 个答案:

答案 0 :(得分:1)

尝试切换到弹出窗口

##============================================================##
## Add marker layer (Layer for QueryRender all dot without cluster)
##============================================================##
@map.addLayer
  id: 'markers_layer_dot'
  source: 'markers_source_wo_cluster'
  type: "circle"
  paint:
    "circle-radius": 0 #This are 1 pixel dot for ref only

##============================================================##
## Add marker layer
##============================================================##
@map.addLayer
  id: 'markers_layer'
  source: 'markers_source'
  type: 'symbol'
  layout:
    'icon-allow-overlap': true
    'icon-image':'pin_map'
    'icon-size':
      stops: [[0,0.4], [40,0.4]]

}捕获{

}

 String parentWindowHandler = driver.getWindowHandle(); // Store your parent window
    String childWindowHandler = null;

    Set<String> handles = driver.getWindowHandles(); // get all window handles
    Iterator<String> iterator = handles.iterator();
    while (iterator.hasNext()){
        childWindowHandler = iterator.next();
    }
    driver.switchTo().window(childWindowHandler); // switch to popup window


    // perform operations on popup

    try {
        assertTrue(isElementPresent(By.xpath("//div[@id='mainDocumentContainer']/div/div[2]/div/div/div[2]/div/table/tbody/tr/td")));
      } catch (Error e) {
        verificationErrors.append(e.toString());
      }
      try {
        assertEquals("Numéro d'opération :   Epicure 1", driver.findElement(By.xpath("//div[@id='mainDocumentContainer']/div/div[2]/div/div/div[2]/div/table/tbody/tr[2]/td")).getText());
      } catch (Error e) {
        verificationErrors.append(e.toString());


   //Back to main window   

    driver.switchTo().window(parentWindowHandler); String parentWindowHandler = driver.getWindowHandle(); // Store your parent window
    String childWindowHandler = null;

    Set<String> handles = driver.getWindowHandles(); // get all window handles
    Iterator<String> iterator = handles.iterator();
    while (iterator.hasNext()){
        childWindowHandler = iterator.next();
    }
    driver.switchTo().window(childWindowHandler); // switch to popup window


    // perform operations on popup

 try{

并使用它来添加文件

driver.findElement(by.Yourlocator).sendKeys(“ pathToYourFile”);

希望这会对您有所帮助:)

答案 1 :(得分:0)

这不会为我们弹出一个新窗口。.它是一种警报或需要我们上载文档的小弹出窗口

答案 2 :(得分:0)

您可以尝试driver.switchTo()。alert()。yourAction();