我正在使用UI自动化外接程序来自动化和测试Java窗口中包含HTML对象的应用程序。我在对象存储库中识别和保存了UIATable,下面的方法可以很好地工作:
MsgBox UIAWindow("**").UIAObject("**").UIATable("**").RowCount 'Prints 3
MsgBox UIAWindow("**").UIAObject("**").UIATable("**").ColumnCount 'Prints 5但是,当我尝试使用以下任何方法获取单元格值时:
MsgBox UIAWindow("**").UIAObject("**").UIATable("**").GetCellValue(1,1) 'Error
MsgBox UIAWindow("**").UIAObject("**").UIATable("**").GetCellData(1,1) 'Error
MsgBox UIAWindow("**").UIAObject("**").UIATable("**").GetCellName(1,1) 'Error我收到一个错误消息,弹出如下消息:
由于无法恢复的错误,测试运行无法继续。<0x80070057>失败是由于从UI自动化继承的缺少或中断的API调用。
我使用的是UFT 14.02。造成这一错误的可能原因是什么?我能做些什么来解决这个问题吗?
发布于 2020-07-29 13:07:05
看一看UFT 14产品可用性矩阵。您需要"UFT测试UI自动化外接程序“一节。
UFT支持JavaFX,但UFT中的UI自动化框架不支持HTML。这可能就是为什么有些方法起作用,而另一些方法则不起作用。也就是说,您可以读取java表,但不能验证html内容。
(我假设您是在对javaFX应用程序进行测试?-您只是说java)
值得指出的是,“不支持”并不意味着它将无法工作,只是它还没有经过Microfocus的全面测试和认证。
此外,如果您检查支持页面,它有一个很大的注意事项:
注意:可用的测试对象和方法完全依赖于应用程序中实现的属性和模式。我们建议您熟悉应用程序对象的属性--特别是Control和支持的模式,以了解可以使用哪些测试对象和方法。
因此,错误可能不是你,也可能不是UFT。这可能是被测试应用程序交付的结果。
你可以尝试的东西..。
如果所有这些都失败了,请告诉我。UFT在GUI方面非常灵活,取决于您需要如何与表交互,我们还可以尝试其他一些解决方案。
https://stackoverflow.com/questions/63133509
复制相似问题