公子小苏 发表于 2017-2-10 14:36:04

QTP录制Windows下CS结构的客户端,录制的全是坐标是怎么回事?

软件是个Windows下的CS结构客户端,用C++写的。用QTP录制时,选择默认的普通录制模式,录制的全是坐标,识别不到任何对象控件。后来问了开发人员,说所有控件都是自己画的,没有句柄。so,没办法用QTP了吗?本来想做客户端的自动化,求问还有什么方法吗?

海海豚 发表于 2017-2-10 15:48:58

嗯,我之前也遇到和你一样的问题,然后我用的是几种录制方法换着来。
我一直使用的是(1)正常录制模式,正常录制模式直接对对象进行操作,但是有时不能识别程序中所有的对象,正因为这个原因导致了我如上的问题。而且正常录制模式对于下拉框不友好,也无法识别。在正常录制模式下处理下拉框识别问题,我用的是新建一个虚拟对象解决的,但是Window("主升浪决策系统").Activate,无法用虚拟对象解决;
然后使用了(2)虚拟录制模式,可以解决这个问题,通过虚拟录制模式,也可以解决下拉框不友好问题,然而缺点是录制下的脚本:   Window("主升浪决策系统").RunAnalog "Track1",不好进行调试;
(3)使用低级录制模式,录制脚本仍是Window("主升浪决策系统").Activate,只有在点击的时候是click动作;
(4)使用图像识别录制模式,与虚拟录制模式效果一样,可以成功录制以及录制下拉框,但其脚本显示Window("主升浪决策系统").InsightObject("InsightObject").Click,相较于虚拟录制模式更加清晰明了,并且对设置检查点无影响
综上,我觉得还是采用(4)图像识别录制模式比较“性价比高”

上面这一段是我在发帖子求助,然后自己解决之后,写的,你可以看看,不知道对你有没有帮助,毕竟我是个菜鸟 TUT

公子小苏 发表于 2017-2-13 11:25:37

海海豚 发表于 2017-2-10 15:48
嗯,我之前也遇到和你一样的问题,然后我用的是几种录制方法换着来。
我一直使用的是(1)正常录制模式, ...

非常感谢您的热心回答,问题是录制的所有控件都只是坐标,那就是对所有控件,都要建一个虚拟对象吗?会不会有点麻烦?你说的图像识别录制模式在哪可以设置?

海海豚 发表于 2017-2-14 16:36:19

公子小苏 发表于 2017-2-13 11:25
非常感谢您的热心回答,问题是录制的所有控件都只是坐标,那就是对所有控件,都要建一个虚拟对象吗?会不 ...

图像识别录制就是洞察录制模式,当初写这个的时候,是看了一个博客这么说,然后也就跟着说是图像识别TUT

jingzizx 发表于 2017-2-16 09:03:01

写的很好,赞一个
页: [1]
查看完整版本: QTP录制Windows下CS结构的客户端,录制的全是坐标是怎么回事?