加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[键盘输入方法1]qtp之Type方法:输入“键盘”操作事件

(2010-09-30 14:18:28)
标签:

杂谈

分类: QTP/VBS20100524

Window测试对象的Type方法来模拟按键,Type方法接受一个按键常量作为输入参数

GUI测试过程中,通常会碰到对象无法被测试工具识别的问题,这时候往往需要特殊的解决办法,其中一种方法就是通过发送键盘按键的方式来操纵控件。

  下面以QQ2009正式版为例,介绍使用TypeMercury.DeviceReplay对象处理控件的方法。

  以下是录制的脚本:

  Window("QQ2009 正式版").Activate

  Window("QQ2009 正式版").WinObject("123456").Click 46,11

  Window("QQ2009 正式版").WinObject("123456").Type "123456"

  Window("QQ安全中心").Activate

  Window("QQ安全中心").Click 369,302

  可以看到密码输入的步骤没有录制下来,按下登录按钮的步骤也没有录制下来。在对象库手工添加对象后再录制,仍然没有把密码输入的步骤录制下来,因此需要手工添加这一步的脚本(另外在对象库中也不能手工地把登录按钮对象添加进去)。调整脚本如下:

  Window("QQ2009 正式版").Activate

  Window("QQ2009 正式版").WinObject("123456").Click 46,11

  Window("QQ2009 正式版").WinObject("123456").Type "123456"

  Window("QQ2009 正式版").WinEdit("Edit").Type "123456"

  ' 5TAB键后聚焦在登录按钮上面

  For I=1 to 5

  Window("QQ2009 正式版").Type micTab

  Next

  Window("QQ2009 正式版").Type micReturn  ' 按回车键模拟用户点击登录按钮

  在这里使用了Window测试对象的Type方法来模拟按键,Type方法接受一个按键常量作为输入参数。

  登录如果失败会出现“QQ安全中心界面,在这个界面中取消按钮也没有被识别出来,因此需要采用相同的办法来处理:

  If Window("QQ安全中心").Exist(10) Then ' 密码输入不正确

  Window("QQ安全中心").Activate

  Window("QQ安全中心").Type micTab

  Window("QQ安全中心").Type micReturn

  End If

  当然,这里也可以使用DeviceReplay对象来模拟按键

 附Type方法的按键常量:

http://s15/middle/62b8fc33g917419cdacae&690

http://s14/middle/62b8fc33g917419d6316d&690

http://s10/middle/62b8fc33g917419f3c3c9&690

http://s12/middle/62b8fc33g74f20296674b&690

 

另附文本格式:

http://www.51testing.com/html/67/44167-212711.html

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有