selenium 之mouseDownRightAt,mouseUpRightAt使用问题
网站有个鼠标右键弹出菜单,点击弹出菜单,执行相应操作,使用 mouseDownRightAt,mouseUpRightAt,执行成功后,没见菜单弹出来,这时用click 弹出菜单xpath,系统提示找不到.具体代码如下:mouseDownRightAt //div[@id='mail_main']/div/div/p/
mouseUpRightAt //div[@id='mail_main']/div/div/p/
click //li[@onclick="JS.writeMail({type:'writemail',init:true})"]
-后来查明:已屏蔽IE右键菜单,自定义的右键菜单。但是该如何用selenium 触发该功能。
若用fireEvent//div[@id='mail_main']/div/div/p/
click //li[@onclick="JS.writeMail({type:'writemail',init:true})"]
还是没发现自定义菜单弹出,click 菜单按钮,提示not found
[ 本帖最后由 kellyxie 于 2009-8-14 15:29 编辑 ] 关于鼠标操作,没试过,不过selenium的机制应该是触发你选择元素上的鼠标点击事件吧,如果这个事件里没触发菜单估计这样操作就不行,你可以试试别的命令看看,比如contextMenu或contextMenuAt什么的,看看行不。你可以搜下网上selenium的api文档,看看有哪些api提供可用。还有,如果这个菜单是系统或IE通过别的方式弹出的,那么我想selenium可能操作不了它,一般来说js不能做的操作selenium就应该操作不了。 你可以问问开发,菜单是这么屏蔽的,怎么触发自定义菜单的,等等,可能selenium的代码就可以实现操作了。 你好,他们用如下方式解决:
Window.document.oncontextmenu=docBodycontextmenu;
function docBodycontextmenu(event)
{
...
} Window.document.oncontextmenu=docBodycontextmenu;
function docBodycontextmenu(event)
{
...
}
看上去“oncontextmenu”好像是个菜单事件,你可以试试RC里这个contextMenu命令api有没有作用 直接使用contextMenuAt(),再用click可以以实现 受教了
页:
[1]