使用Selenium2库在robotframework中执行javascript
我正在用robotframework和Selenium2库测试一个基于extjs的web applaction,但是我找不到表组件包含的一些元素。Selenium2库有一个名为Execute javascript的关键字,因此我想知道如何执行javascript,例如,如何执行js代码:使用Selenium2库在robotframework中执行javascript,javascript,extjs,selenium,robotframework,Javascript,Extjs,Selenium,Robotframework,我正在用robotframework和Selenium2库测试一个基于extjs的web applaction,但是我找不到表组件包含的一些元素。Selenium2库有一个名为Execute javascript的关键字,因此我想知道如何执行javascript,例如,如何执行js代码: var a=document.getElementById('ext-comp-1155').getElementsByTagName("button"); a[0].click(); 是否有人拥有成功的基于
var a=document.getElementById('ext-comp-1155').getElementsByTagName("button");
a[0].click();
是否有人拥有成功的基于extjs的网页自动测试经验?任何帮助都将不胜感激。您应该能够像这样执行javascript
Execute Javascript var a=document.getElementById('ext-comp-1155').getElementsByTagName("button"); a[0].click();
也就是说,尽管javascript中有多个语句,但只要分号在适当的位置,就可以在单个参数中给出它们
这样可以使其更具可读性:
${button clicker}= document.getElementById('ext-comp-1155').getElementsByTagName("button")[0].click()
Execute Javascript ${button clicker}
您应该能够像这样执行javascript
Execute Javascript var a=document.getElementById('ext-comp-1155').getElementsByTagName("button"); a[0].click();
也就是说,尽管javascript中有多个语句,但只要分号在适当的位置,就可以在单个参数中给出它们
这样可以使其更具可读性:
${button clicker}= document.getElementById('ext-comp-1155').getElementsByTagName("button")[0].click()
Execute Javascript ${button clicker}
如果你不局限于硒,你可能想看看 版本5.0完全支持ExtJS测试。ExtJS UI小部件是RIATest中的头等公民。这意味着与其他HTML测试工具不同,您不需要编写操作HTMLDOM元素的测试。RIATest中的测试以ExtJSUI小部件的形式运行 使用ExtJS小部件的RITest脚本示例: 单击标签为“下一页”的ExtJS按钮: 下面将行从一个ExtJS树拖放到另一个ExtJS树:
ExtRow("Controller.js")=>dragAndDropTo(ExtTreePanel("#tree2")->ExtRow("Custom Ext JS"));
这将折叠ExtJS框的标题:
ExtBox("Feeds")->ExtHeader("FeedsВ")->ExtCollapser()=>click();
(以上所有示例代码都来自于在ExtJS示例应用程序上运行的真实测试脚本)
RIATest还知道何时自动等待ExtJS AJAX完成,所以如果您的UI没有动态内容下载,测试将自动神奇地等待,直到从服务器接收到数据
(免责声明:我是RITAST团队成员)。如果您不限于硒,您可能需要查看 版本5.0完全支持ExtJS测试。ExtJS UI小部件是RIATest中的头等公民。这意味着与其他HTML测试工具不同,您不需要编写操作HTMLDOM元素的测试。RIATest中的测试以ExtJSUI小部件的形式运行 使用ExtJS小部件的RITest脚本示例: 单击标签为“下一页”的ExtJS按钮: 下面将行从一个ExtJS树拖放到另一个ExtJS树:
ExtRow("Controller.js")=>dragAndDropTo(ExtTreePanel("#tree2")->ExtRow("Custom Ext JS"));
这将折叠ExtJS框的标题:
ExtBox("Feeds")->ExtHeader("FeedsВ")->ExtCollapser()=>click();
(以上所有示例代码都来自于在ExtJS示例应用程序上运行的真实测试脚本)
RIATest还知道何时自动等待ExtJS AJAX完成,所以如果您的UI没有动态内容下载,测试将自动神奇地等待,直到从服务器接收到数据
(免责声明:我是RIATest团队成员)。我现在可以在robotframework中执行js了,谢谢。然而,让我非常悲伤的是,当自动测试基于extjs的web应用程序时,执行js的解决方案不起作用。我现在可以在robotframework中执行js了,谢谢。然而,让我非常悲伤的是,当自动测试基于extjs的web应用程序时,执行js的解决方案不起作用。