51Testing软件测试论坛

标题: 标题变化、QTP回放时识别不了 [打印本页]

作者: zhaof4593105    时间: 2012-1-7 11:11
标题: 标题变化、QTP回放时识别不了
程序是VB、C/S页面、标题头部前部分是固定的、后面会跟着顺番号。每打开一次加1、如:测试软件  001;测试软件  002。。。
其实这两个程序是同一个页面,只不过第一次打开标题后面加了001,第二次打开加了1,显示002、
在对象库中会显示大致如下
action
  - apy5380     (text:测试软件  001)text属性值
    - 登录button
  - apy5380_2     (text:测试软件  002)text属性值
    - 登录button

程序中代码大致如下
window("apy5380").ActiveX("登录button").Click

以上在第一次打开的页面是可以正常回放的、
第二次打开的页面回放会报错的、如果改属性SetTOProperty "text",测试软件  002,这样也是可以成功回放的、
这就说明QTP没有找到页面,一旦找到页面,页面中控件是可以找到的、
现在问题就出来了,我页面并不是只有打开两次,而且有可能打开了其他的页面,而这个页面会编程004番号,
现在我就想有什么代码可以控制只要找到“测试软件”这个标题、就去自动匹配、不要该程序标题、程序标题该不了、
我查了一些文档说有用正则表达式的,但小弟初学QTP,不会用、有哪位大神可以给个例子、或给我这个说明下、
第一次发没弄好,感谢各位大大帮忙,感激不尽
作者: zhaof4593105    时间: 2012-1-7 12:21
没人、、、、
作者: 黑羽祭    时间: 2012-1-7 13:29
回复 1# zhaof4593105


    使用描述性编程可解决。
作者: zhaof4593105    时间: 2012-1-7 13:56
回复 3# 黑羽祭


    如何使用描述性编程、在哪里写?新手、不会、能讲解明白点嘛、
作者: 黑羽祭    时间: 2012-1-9 13:55
回复 4# zhaof4593105


    给你举个简单的例子吧
比如给电脑上自带的计算器录制脚本
录制 按下1  则自动生成的脚本是:Window("计算器").WinButton("1").Click
如果你还想让脚本能自己按2 ,正常的就是要也录制个2,直接把WinButton("1").Click
改为WinButton("2").Click会失败,找不到对象,这样的情况和你的比较相似吧。
描述性编程就可以这样写:
Window("计算器").WinButton("text:=2").Click,这样2就按到了。
text是属性,可以通过Object Spy进行查看。
作者: momo@    时间: 2012-1-11 16:30
正则:测试软件  001 改成 测试软件.* 就可以匹配了
作者: 297322716    时间: 2012-1-11 17:10
正则:测试软件  001 改成 测试软件.* 就可以匹配了
momo@ 发表于 2012-1-11 16:30



    顶。




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