Selenium Webdriver - click on hidden elements

前端 未结 5 1361
自闭症患者
自闭症患者 2020-11-27 16:58

I am trying to automate upload file functionality in Google Drive.

The element used to pass parameters is hidden with height - 0px.

None of the user actions

5条回答
  •  心在旅途
    2020-11-27 17:34

    Try this:

    WebElement elem = yourWebDriverInstance.findElement(By.xpath("//*[@class='goog-menu goog-menu-vertical uploadmenu density-tiny']/input"));
    String js = "arguments[0].style.height='auto'; arguments[0].style.visibility='visible';";
    
    ((JavascriptExecutor) yourWebDriverInstance).executeScript(js, elem);
    

    The above bunch would change the visibility of your file input control. You can then proceed with the usual steps for file upload like:

    elem.sendKeys(""); 
    

    Be aware, by changing the visibility of an input field you are meddling with the application under test. Injecting scripts to alter behavior is intrusive and not recommended in tests.

提交回复
热议问题