1:基本的上传控件(图1、图2)
图1:MSN上传照片
图2:ogame论坛上传图片
这种基本的上传控件QTP脚本在处理时有两种方式:
1.1 识别Windows选择框对象Dialog和WinListView,有点繁琐,但是能精确的定位用户操作。
Browser("只有故事 的日志 — Windows Live").Page("只有故事 的日志 — Windows Live").Link("添加照片").Click
'这一步是必须的,这样才能弹出选择文件对话框,后续的操作才能继续。很多人这一步都漏加了。
Browser("只有故事 的日志 — Windows Live").Page("只有故事 的日志 — Windows Live").Frame("Frame").WebFile("fileUpload1").Click
Browser("只有故事 的日志 — Windows Live").Dialog("选择文件").Activate
Browser("只有故事 的日志 — Windows Live").Dialog("选择文件").WinListView("SysListView32").Select "gif.gif"
Browser("只有故事 的日志 — Windows Live").Dialog("选择文件").Activate
Browser("只有故事 的日志 — Windows Live").Dialog("选择文件").WinButton("打开(O)").Click
Browser("只有故事 的日志 — Windows Live").Page("只有故事 的日志 — Windows Live").Frame("Frame").WebButton("上载").Click
1.2 只识别浏览器的上传控件对象WebFile,简单,很多情况下这种方式就能满足需求。
Browser("只有故事 的日志 — Windows Live").Page("只有故事 的日志 — Windows Live").Link("添加照片").Click
Browser("只有故事 的日志 — Windows Live").Page("只有故事 的日志 — Windows Live").Frame("Frame").WebFile("fileUpload1").Set "C:\Documents and Settings\coretest03\桌面\gif.gif"
Browser("只有故事 的日志 — Windows Live").Page("只有故事 的日志 — Windows Live").Frame("Frame").WebButton("上载").Click
2. 分析
WinListView是一个Windows对象,它的识别可能因为不同的操作系统实现上的差异而产生差异。
WebFile是一个封装后的Web对象,相比较WinListView而言在录制回放上更加稳定,因此这里建议用WebFile