我正在使用robotframework和selenium2library测试一个基于extjs的web应用程序,但是我找不到一些包含在表格组件中的元素。selenium2library有一个叫做Execute javascript的关键字,所以我想知道如何执行javascript,例如我如何执行js代码:
var a=document.getElementById('ext-comp-1155').getElementsByTagName("button");
a[0].click();有没有人有成功的基于extjs的网页自动化测试经验?任何帮助都将不胜感激。
发布于 2012-03-09 02:26:07
您应该能够像这样执行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} 发布于 2012-09-12 21:54:59
如果您不局限于Selenium,那么您可能想看看RIATest。
5.0版本完全支持ExtJS测试。在RIATest中,ExtJS UI小部件是一等公民。这意味着与其他HTML测试工具不同,您不需要编写处理HTML DOM元素的测试。RIATest中的测试根据ExtJS UI小部件进行操作。
使用ExtJS小部件的RIATest脚本示例:
下面单击标签为"Next Page“的ExtJS按钮:
ExtButton("Next Page")=>click();下面的代码将行从一个ExtJS树拖放到另一个树:
ExtRow("Controller.js")=>dragAndDropTo(ExtTreePanel("#tree2")->ExtRow("Custom Ext JS"));这将折叠ExtJS框的标题:
ExtBox("Feeds")->ExtHeader("FeedsВ")->ExtCollapser()=>click();(上面的所有示例代码都来自于在ExtJS示例应用程序上运行的真实测试脚本)。
RIATest还知道何时自动等待ExtJS AJAX完成,因此如果您的UI执行动态内容下载,测试将自动等待,直到从服务器接收到数据。
(免责声明:我是RIATest团队成员)。
https://stackoverflow.com/questions/9618754
复制相似问题