Automated tests Win32 app ObjectSpy上的QTP写入测试未找到对象id

Automated tests Win32 app ObjectSpy上的QTP写入测试未找到对象id,automated-tests,qtp,Automated Tests,Qtp,我有使用Selenium编写web应用程序自动化测试的经验。 然而,我现在必须自动运行一个我不熟悉的Windows桌面应用程序 我使用的是QTP 11(旧版本),我可以在桌面应用程序中获得QTP登录类型用户名/密码。但是,当应用程序加载时,会出现类似Windows桌面的图标。我尝试在Actions文件夹图标上使用ObjectSpy,但它找不到对象ID,它认为该图标是WinObject(“复合”) 还尝试使用QTP记录功能,但它生成的代码使用硬编码的x和y值。我不想使用x,y值,就好像动作图标在未

我有使用Selenium编写web应用程序自动化测试的经验。 然而,我现在必须自动运行一个我不熟悉的Windows桌面应用程序

我使用的是QTP 11(旧版本),我可以在桌面应用程序中获得QTP登录类型用户名/密码。但是,当应用程序加载时,会出现类似Windows桌面的图标。我尝试在Actions文件夹图标上使用ObjectSpy,但它找不到对象ID,它认为该图标是WinObject(“复合”)

还尝试使用QTP记录功能,但它生成的代码使用硬编码的x和y值。我不想使用x,y值,就好像动作图标在未来向左或向右移动3毫秒,测试将失败。 例如 窗口(“贷款IQ”)。WinObject(“复合”)。单击369,33

需要在Win32应用程序中查找对象ID的帮助。谢谢


首先,您应该确保UFT已配置为测试您的应用程序。在“录制和运行设置”对话框中,确保:


如果这不能改善情况,您可以尝试使用(也称为Insight)。

WIN32应用程序可能是一场噩梦,尤其是在QTP 11上,因为它是一种过时的版本。如果您想获得稳定的自动化,我建议如下:

  • 升级到更新版本的UFT(14+) 这很可能不会帮助您识别对象,但会支持许多新技术,如以下步骤所述,这些技术可能会帮助您
  • 使用基于图像的识别 即使您的屏幕分辨率发生变化,UFT仍然能够识别图片。它不使用绝对矢量来比较位图,而是一种不同的技术,我将不详细介绍(长话短说,屏幕分辨率的变化是可以的)
  • 为您的小部件提供支持 Microsoft有两个框架可用于提供UI自动化功能(最初用于具有可访问性需求的人员,但现在用于RPA和GUI测试)。UFT支持Microsoft的MSAA和UIA框架,因此,如果您的公司准备通过这些技术之一实现对UI小部件的支持,您就可以顺利获得测试自动化体验。请注意:这主要是一项巨大的投资,因此,如果该工具是内部工具,且不打算长期使用,请使用基于图像的识别

  • 我已在选定的任何Windows应用程序上记录并运行测试。还尝试通过添加exe来指定我的应用程序。不幸的是,QTP仍然记录x,y坐标<代码>窗口(“贷款IQ”).WinObject(“复合”).DblClick 363,31