QTP测试QQ登录界面

发表于:2010-3-17 13:41

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:陈能技(CSDNBlog)    来源:51Testing软件测试网采编

#
QTP
#
qtp
分享:

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

  下面以QQ2009正式版为例,介绍使用Type和Mercury.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"

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

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对象来模拟按键。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号