51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2750|回复: 6
打印 上一主题 下一主题

[原创] QTP无法录制VC++程序?右键菜单出来后,点菜单项动作无法录制下来

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-10-13 11:42:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人在录制用VC++编写的应用程序过程中遇到下面的问题.

这个是右键菜单点出来的菜单选项,下一个动作是,选中其中一个"新建表分组",再会弹出一个窗口.
脚本如下:
Window("集成平台").WinTreeView("WinTreeView").Select "数据库 [test];所有表[共1张表]",micRightBtn
Window("集成平台").Dialog("新建表分组").WinEdit("表分组名称:").Set "t"
Window("集成平台").Dialog("新建表分组").WinEdit("表分组描述:").Set "t"
Window("集成平台").Dialog("新建表分组").WinButton("确定").Click
从脚本可以看出,右键菜单出来后,选中一个选项,单击,这个动作没有录制下来,
回放时候到第2步,出错

于是用spy识别这个右键菜单:

把这个对象加到对象库后,

在脚本第二行,增加如下代码:
Window("集成平台").Window("Window").Click 927, 383,micLeftBtn
可是还是不行,
回放脚步,还是只到弹出右键菜单,到第二步,又出错:

求助各位前辈,这类问题如何解决?还是QTP对VC++根本就支持不好呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-10-13 12:23:01 | 只看该作者
Window("集成平台").WinTreeView("WinTreeView").Select "数据库 [test];所有表[共1张表]",micRightBtn
Wait (3) 'try add this to script
Window("集成平台").Dialog("新建表分组").WinEdit("表分组名称:").Set "t"
Window("集成平台").Dialog("新建表分组").WinEdit("表分组描述:").Set "t"
Window("集成平台").Dialog("新建表分组").WinButton("确定").Click
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2011-10-13 15:01:10 | 只看该作者
回复 2# softCore


    还是第一个错啊,parent properties的错!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2011-10-13 17:39:26 | 只看该作者
还是弹出的这个右键菜单的识别有点问题,我对录制这块不算熟悉,感觉这个弹出菜单的窗体识别有点问题,我晚上回去看看,也许真的需要map?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2011-10-13 20:44:35 | 只看该作者
http://bbs.51testing.com/archiver/tid-82266.html 这里有个对右键无法识别时的模拟键盘算法,可以尝试一下,你的parent对象之所以找不到,是因为qtp无法识别你的右键菜单操作。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2011-10-14 10:22:13 | 只看该作者
回复 5# softCore


    嗯,谢谢,我试试看
我问过开发人员,这个右键菜单是: CMenu::TrackPopupMenu
可是spy识别出来的是个window,感觉好像确实是识别不了.
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2011-10-14 11:44:11 | 只看该作者
这里有个对右键无法识别时的模拟键盘算法,可以尝试一下,你的parent对象之所以找不到,是因为qtp无法识别 ...
softCore 发表于 2011-10-13 20:44



    十分感谢您提供的帮助,问题已经解决了,代码如下:
Window("集成平台").WinTreeView("WinTreeView").Select "数据库 [test];所有表[共1张表]",micRightBtn
Set wshShell = CreateObject("WScript.Shell")
wshShell.SendKeys"{DOWN}"
wshShell.SendKeys"{DOWN}"
wshShell.SendKeys"{ENTER}"
wait 1  
Window("集成平台").Dialog("新建表分组").WinEdit("表分组名称:").Set "t"
Window("集成平台").Dialog("新建表分组").WinEdit("表分组描述:").Set "t"
Window("集成平台").Dialog("新建表分组").WinButton("确定").Click
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-19 01:29 , Processed in 0.086509 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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