51Testing软件测试论坛

标题: 使用testcomplete的问题 [打印本页]

作者: wangdongting    时间: 2010-9-27 10:41
标题: 使用testcomplete的问题
开发所用的语言是delphi
打开程序后,点应用程序上一个按钮后出现一个提示框
第一次他的NativeDelphiObject.Name 是UserManageForm_1。但是再次打开就会是UserManageForm_2.
因为每次打开会+1,所以每次回放都会出错。刚刚看是在学testcomplete,很多不懂,请大侠看看有什么好的办法啊,谢谢。
作者: TIB    时间: 2010-9-27 11:17
可以在Object Map中用正则表达式把这个对象的属性匹配掉,例如UserManageForm.*

也可以在脚本中用Find、FindChild等来查找对象
作者: wangdongting    时间: 2010-9-27 14:00
谢谢。我在object map中用正则表达式,很好用啊,3Q
作者: wangdongting    时间: 2010-9-27 14:55
回复 2# TIB
Sub Test2()
  
  Call Aliases.CPBCGD.frmBkMain.Click(43, 12)
  
  Call Aliases.CPBCGD.frmBkMain.MainMenu.Click("系统(F)|用户管理")
  'Clicks at point (57, 15) of the 'UserManageForm' object.
  Call Aliases.CPBCGD.UserManageForm.Click(57, 15)

  Call Aliases.CPBCGD.UserManageForm.Panel1.UserTreeView.PopupMenu.Click("新建用户(Z)")
  'Closes the 'UserManageForm' window.
  Call Aliases.CPBCGD.UserManageForm.Close
End Sub

已经将UserManageForm对象属性用正则表达式匹配过了,成功过一次,但是之后我重新运行就提示如下,请高手帮我看一下是什么原因啊,谢谢!

log中显示
Type        Message        Time        Priority        Has Picture        Link
The '用户管理' window is invisible and thus cannot be activated.        14:46:08        Normal
作者: msnshow    时间: 2010-10-6 13:37
不懂,关注中
作者: havards    时间: 2010-11-26 15:35
如果想快速解决问题,可以用个循环,当index的值为1的时候,判断下;为2的时候,判断下。(如果只有两个index的变化的话)
如果想彻底解决问题,建议用find findchild。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2