Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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 如何在Robot框架中执行JavaScript_Selenium_Automated Tests_Selenium Webdriver_Robotframework - Fatal编程技术网

Selenium 如何在Robot框架中执行JavaScript

Selenium 如何在Robot框架中执行JavaScript,selenium,automated-tests,selenium-webdriver,robotframework,Selenium,Automated Tests,Selenium Webdriver,Robotframework,下面是我的代码。当我运行此程序时,它显示WebDriverException。如何在Robot框架中执行JavaScript代码 这,return$(arguments[0]).data(“${ToolTip}”).options.titlecode在-java-Selenium web驱动程序中运行良好 Mouse Over ${CreateTask} Execute JavaScript return $(arguments[0]).data('${ToolTip}').

下面是我的代码。当我运行此程序时,它显示WebDriverException。如何在Robot框架中执行JavaScript代码

这,
return$(arguments[0]).data(“${ToolTip}”).options.title
code在-java-Selenium web驱动程序中运行良好

Mouse Over    ${CreateTask}
    Execute JavaScript    return $(arguments[0]).data('${ToolTip}').options.title
发件人:

请注意,默认情况下,代码将在 Selenium对象本身,因此这将引用Selenium对象。使用 窗口以引用应用程序的窗口,例如。 window.document.getElementById('foo')

所以


假设有一些库(最有可能是jQuery)能够真正理解
$
速记。

参数[0]
通常指传递给脚本的参数

Selenium2库的执行JavaScript调用 网络驱动程序。并且不向它传递任何参数<因此,代码>参数[0]未定义

有关解决方法,请参阅

使用以下选项中的任意一种方法

执行Javascript文档。getElementById('authUser')。value='admin'
${ele}获取WebElement id=clearPass
执行Javascript参数[0]。value='pass';参数${ele}
执行Javascript警报(参数[0]);论据123
执行Javascript document.evaluate(“//*[text()='Patients']”,document.body,null,9,null);
执行Javascript document.querySelector('[data bind=“click:changePassword”]')。单击();
${ele}获取WebElement/*[text()='Logout']
执行Javascript参数[0]。单击();参数${ele}

我也收到了同样的问题。您能与我们分享有问题的页面或至少是一个简化版本吗?你确定你的语法正确吗?看起来很奇怪。您能够执行任何Javascript吗?您没有将Execute Javascript的输出存储到任何变量,这是故意的吗?${ToolTip}是否具有正确的值?它来自哪里?是的,我能够执行JavaScript文档。getElementsByName(“创建按钮”)[0]。单击()和${ToolTip}xpath=//tr[2]/td[2]/span。Webdriver代码正在正确运行JavascriptExecutor=(JavascriptExecutor)驱动程序;String toolString=(String)executor.executeScript(“返回$(参数[0])。数据('//tr[2]/td[2]/span')。选项。标题;“,”//tr[2]/td[2]/span”)${title}=executeJavaScript返回$('//tr[2]/td[2]/span').data('//tr[2]/td[2]/span').options.title;
Mouse Over    ${CreateTask}
    Execute JavaScript    return window.$(arguments[0]).data('${ToolTip}').options.title