You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用UFT 12.54在Chrome中自动化Flex应用并解决对象识别问题

解决UFT 12.54无法识别Chrome中Flex 4.5应用对象的问题

我之前帮不少人处理过UFT与Flex自动化的兼容性问题,结合你遇到的情况,整理了几个关键的排查和解决步骤,你可以一步步尝试:

1. 确认UFT Flex插件的安装与启用

  • 首先得确保UFT装了Flex Add-in——默认安装可能没勾选这个组件,你可以通过UFT的Add-in Manager添加。启动UFT时,一定要在Add-in Manager里勾选Flex选项,不然根本没法识别Flex控件。
  • 还要检查插件版本兼容性:UFT 12.54的Flex插件得匹配Flex 4.5和Flash Player 28。你可以去UFT安装目录(一般是C:\Program Files (x86)\HP\Unified Functional Testing\dat\Flex)看看FlexAgent.swc这类文件的版本,要是不对,得换成适配Flex 4.5的版本。

2. 配置Chrome的Flash Player权限

  • 打开Chrome,在地址栏输入chrome://settings/content/flash,先确保目标Flex应用的域名被允许运行Flash,而且**“允许网站运行Flash”**这个总开关得打开。
  • 再去chrome://extensions/页面,确认Flash Player Debugger是启用状态,没被禁用或拦截。

3. 验证Flex应用的调试编译状态

  • Flex应用必须是调试模式编译的,UFT的Flex Agent才能注入进去识别内部控件。你得跟开发确认,他们编译Flex 4.5应用时有没有加调试参数,有没有把UFT的FlexAgent.swc引入项目。要是应用是发布模式编译的,UFT肯定只能识别成WebElement,抓不到内部控件。
  • 验证方法:打开Flex应用后右键点击应用区域,要是能看到“Debugger”相关选项(比如“Show Redraw Regions”),说明是调试模式;没有的话,就得让开发重新编译。

4. 调整UFT的对象识别规则

  • 打开UFT,去Tools > Object Identification,选择Web类,检查WebElement的识别属性是不是合理。默认属性可能不够区分Flex对象,你可以把class name、inner text、unique ID这类属性加到强制识别列表里。
  • 再用UFT的Object Spy重新捕获对象,看看能不能识别到Flex专属控件(比如FlexButton、FlexDataGrid)。要是还是只能抓到WebElement,说明Agent没成功注入。

5. 检查UFT与Chrome的版本兼容性

  • UFT 12.54对Chrome的支持范围有限,你用的Chrome版本得在它的兼容列表里——一般Chrome 50到60左右的版本适配性最好,新版本Chrome可能不支持UFT 12.54。要是Chrome版本太高,建议降级到兼容版本。
  • 还要确认UFT的Chrome Web Driver配置正确:去Tools > Options > Web > Advanced里,检查Chrome Driver的路径是不是指向了和你Chrome版本匹配的驱动文件。

6. 备选方案:用描述性编程定位对象

要是上面的步骤都解决不了,你可以试试用描述性编程(Descriptive Programming)来定位Flex对象,通过组合多个属性(比如xpath、css selector、class name)来唯一识别控件,示例VBS代码如下:

' 示例:定位Flex按钮并点击
Set flexButton = Browser("title:=你的Flex应用标题").Page("title:=你的Flex应用标题").WebElement("css:=div.flex-button[data-value='目标按钮值']")
flexButton.Click

内容的提问来源于stack exchange,提问作者Thrupthi R p

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:20:42