51Testing软件测试论坛
标题:
selenium IDE动态元素的问题,请指教
[打印本页]
作者:
discusstest
时间:
2011-11-11 19:49
标题:
selenium IDE动态元素的问题,请指教
本帖最后由 discusstest 于 2011-11-11 19:50 编辑
最近两天开始尝试用selenium IDE做自动化,碰到了一些问题,因为我们的页面是写好的script,很多地方都是动态的
左右是两个frame,
[attach]76026[/attach]
第一步点击左边的cluster链接,就打开了右边的frame,
用IDE录制的脚本是selenium.click("link=cluster");
selenium.selectFrame("relative=up");
selenium.selectFrame("detail");
这一段脚本用IDE回放没问题,但如果在IDE窗口里面find,selenium.selectFrame("relative=up")找不到
第二步点击右边的cluster node链接,打开cluster node的tab
用IDE录制的脚本是selenium.click("id=ClusterNodesHyperlink_caption_1640063425"),
因为后面的数字是动态生成的,每次都不一样,
改成selenium.click("css=span[id^= 'ClusterNodes']")后在IDE窗口里面find能找到,可是用IDE回放就找不到元素
第三步在罗列的cluster结点中,单击NodeA旁边的弹出菜单,选择properties
用IDE录制的脚本是selenium.click("name=ns_0x002d2124140002_WDWPM27d827d8")
这个比较麻烦,因为菜单有3个选项,而且每个cluster结点都有自己的菜单,如何找到对应的结点的具体菜单项?
[attach]76024[/attach]
作者:
遇上鱼子
时间:
2011-11-21 16:29
其实seleniumIDE只是一个辅助功能,如果你遇到回放不成功的情况,建议在你所熟悉的代码下使用IDE进行设计,selenium支持很多种语言,总有一款适合你,这种问题,在seleniumIDE下很难解决掉的。
作者:
流光
时间:
2011-11-22 17:51
试试xpath定位看看?加上匹配模式
作者:
474241558
时间:
2011-11-23 09:07
单击nodeA后弹出的菜单,如果要以每个菜单的name做为匹配属性的话,我觉得没有必要,而且你必须要提前准备大量的这样的参数,实现起来比较困难。
你可以这样实现,nodeA\nodeB、nodeC点击应该没有什么问题吧,如果你要点击某一结点(nodeA\B\C)打开后的具体菜单,可以判断点击节点后,弹出的菜单层(这里的菜单应该是一个div层,平时不点击节点的时候他不会出现,肯定有个display的样式属性)是否出现,可以通过selenium中等待某一对象是否出现来判断,然后在弹出的层中,已具体的text文字做为主要识别依据,来识别三个不同的菜单,从而避开菜单的name属性无规律,不好操作的问题。
这样实现应该没有问题,对selenium也了解过一小段时间,配合cucumber做过自动化。以上仅是我对该问题解决的初步思想。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2