Selenium 如何在Robot框架中执行JavaScript
下面是我的代码。当我运行此程序时,它显示WebDriverException。如何在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}').
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