自动化处理上传下载对话框的方法总结

最近在使用selenium/webdriver跑自动化脚本,有几个用例需要处理上传/下载对话框,经过几天的研究, 我尝试了几种处理上传/下载对话框的方法,在此总结一下。

研究了几种自动化处理上传/下载对话框的方法。

1、autoIt 控制上传/下载对话框

由于我们的用例需要下载修改后再上传,鉴于资源泄露,污染外部环境等各种因素,我们计划将文件下载到相关工程文件夹中,由于firefox默认下载到指定目录,因此,对于firefox我们需要将下载设置成 “总是提示我保存路径"。

当我们处理“Save as” 对话框的时候, 往往希望将文件保存在我们指定的目录, 可是闹心的事情发生了,在‘save as’ 对话框中,显示保存路径的是一个“ToolbarWindow32”类型的控件,当点击该控件时, 该控件将变成一个edit text,可以手动填写相关路径。 因此,我的打算是模拟点击事件,当该ToolbarWindow32控件变成edit text时候,输入相关路径。

不幸的是,我尝试了autoIt提供的相关API(也许有的api起作用,我还没用到),比如controlclick, _GUICtrlToolbar_ClickButton()等等都无法点击ToolbarWinodw32类型的控件。只有mouseclick 方法起作用,可是无法获取该窗口的坐标, 从而得不到该控相对于所在窗口左上角的坐标值导致我不得不放弃了这种做法。

最后误打误撞发现在下载对话框中直接输入下载全路径, 比如C:\abc.exe,就可以直接将文件abc.exe下载到指定目录。真是踏破铁鞋无觅处,得来全不费工夫。


2、待续

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值