51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1789|回复: 0
打印 上一主题 下一主题

[原创] QTP一直显示在运行中

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-4-12 11:39:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教一下,我录制了一个QTP脚本,是测试登陆的,代码如下
Function  submit()
   '测试登陆的情况
Dim loginScuess,inFailValue,submitEnable,inFail,e
SystemUtil.Run "D:\呼叫中心系统"
Window("D:\呼叫中心系统").WinListView("SysListView32").Select "tel60.exe"
Window("D:\呼叫中心系统").WinListView("SysListView32").Activate "tel60.exe"
RunAction "invalue", oneIteration
'此时遇到的问题 登陆按钮不会变灰
'1.enabled的值不一样 如果灰色不可点时值是false 黑色可点时值是true
submitEnable=Window("Window").WinButton("登录(O)").GetROProperty("enabled")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("d:\aaa.txt", 2, True)
f.WriteLine("大家好我是分隔线*************************************************************")
f.WriteLine("第一个检查点,按钮的值是:"&submitEnable)
f.WriteLine("灰色是false,黑色是true")
f.WriteLine("输入的用户名是:"&username2&"。密码是:"&pwd)
f.WriteLine("大家好我还是分隔线***********************************************************")
f.WriteLine()
Window("Window").WinButton("登录(O)").Click     
Window("Window_2").Check CheckPoint("广州恒邦呼叫中心系统")
loginScuess=Window("Window_2").Check (CheckPoint("广州恒邦呼叫中心系统"))
f.WriteLine("亲,我是分隔线哦*************************************************************")
f.WriteLine("第二个检查点,广州恒邦呼叫中心系统图片检测值是:"&loginScuess)
f.WriteLine("亲,我还是分隔线*************************************************************")
f.WriteLine()
If loginScuess Then
  Window("Window_2").Window("Window").WinButton("Button").Click
  Window("Window_2").Dialog("提示").WinButton("是(Y)").Click
else
  inFail=Window("Window").Dialog("错误").GetROProperty("enabled")
  msgbox(inFail)
  inFailValue=Window("Window").Dialog("错误").Static("操作员代码或密码错误").GetROProperty("regexppwndtitle")
  msgbox(e)
  f.WriteLine("亲,我是分隔线哦*************************************************************")
  f.WriteLine("您是不是输入的错误的密码呢,系统会报错哦"&inFail)
  f.WriteLine("系统提示的是"&inFailValue)
  f.WriteLine("亲,我还是分隔线*************************************************************")
  f.WriteLine()
  f.close
End If
附:invalue这个函数是因为登陆框需要密码框输入数据后才会变黑,所以输入用户名与密码的操作使用低级录制模式存在一个action中,这里是直接调用代码如下
Window("Window").WinObject("Edit").Click 97,7
Window("Window").WinObject("Edit").Type DataTable("username", dtGlobalSheet)
Window("Window").WinObject("Edit_2").Click 83,18
Window("Window").WinObject("Edit_2").Type DataTable("pwd", dtGlobalSheet)

然后action中是直接调用submit函数,运行过程正常,等submit函数运行完后QTP还是一直显示在运行中,等几分钟后会出现一个提示

请问这是因为什么呢,可以怎样解决?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-18 00:50 , Processed in 0.065633 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表