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
Selenium innerHTML在Firefox中运行良好,而当我在Chrome中尝试同样的方法时,它就不起作用了_Selenium_Selenium Webdriver_Selenium Chromedriver_Selenium Firefoxdriver - Fatal编程技术网

Selenium innerHTML在Firefox中运行良好,而当我在Chrome中尝试同样的方法时,它就不起作用了

Selenium innerHTML在Firefox中运行良好,而当我在Chrome中尝试同样的方法时,它就不起作用了,selenium,selenium-webdriver,selenium-chromedriver,selenium-firefoxdriver,Selenium,Selenium Webdriver,Selenium Chromedriver,Selenium Firefoxdriver,我正在尝试使用JavaScriptExecutor获取工具提示文本。该代码在Firefox中运行良好,而在Chrome中则无法运行相同的代码 情况是: 当我在上传文件字段中选择一个无效的文件类型时,我将以工具提示消息的形式收到验证消息。要获取工具提示消息,我使用以下代码 String invalidFileTypeMessag=(String)((JavascriptExecutor)驱动程序).executeScript(“返回参数[0].innerHTML;”,tooltipWebEleme

我正在尝试使用JavaScriptExecutor获取工具提示文本。该代码在Firefox中运行良好,而在Chrome中则无法运行相同的代码

情况是: 当我在上传文件字段中选择一个无效的文件类型时,我将以工具提示消息的形式收到验证消息。要获取工具提示消息,我使用以下代码

String invalidFileTypeMessag=(String)((JavascriptExecutor)驱动程序).executeScript(“返回参数[0].innerHTML;”,tooltipWebElement)


完全相同的代码在Firefox中工作,而不是在Chrome中

实现以下代码有助于解决我的问题

 try 
     {
         String mouseOverScript = "if(document.createEvent){var evObj = document.createEvent('MouseEvents');evObj.initEvent('mouseover',true, false); arguments[0].dispatchEvent(evObj);} else if(document.createEventObject) { arguments[0].fireEvent('onmouseover');}";
         ((JavascriptExecutor) driver).executeScript(mouseOverScript,uploadFileInputFieldWebElement);
         Thread.sleep(1000);
         invalidLicenseFileTypeMessag = (String)((JavascriptExecutor)driver).executeScript("return arguments[0].innerHTML;",tooltipWebElement);


    } catch (Exception e) {
        exception message;

    }

为什么您使用
JavascriptExecutor
而不是
GetAttribute
方法?为什么不使用
textContent
而不是
innerHTML
@Madhan使用textContent会给我以下错误“没有这样的元素:无法定位元素”。我的代码在Firefox上运行得非常好,但它在Chrome上造成了这个问题。@GaurangShah,因为我正试图从隐藏的div标记中检索文本。只有当我们将鼠标移到特定字段上时,标签才会可见。@SujaiKrishna这就是问题所在。完全按照手动方式执行。首先执行mousever事件,然后尝试获取元素属性。我相信这将适用于大多数浏览器。