所以我是新的UFT,我试图记录一个应用程序,这是微焦点我的飞行样本应用程序,并运行测试,在开始的时候,一切都工作得很好,简单的值。现在我想使用datatable在多个值上运行测试,它通过了测试迭代:第1行但是在第2行测试迭代中崩溃并返回一个错误。这是我的代码
WpfWindow("Micro Focus MyFlight Sample").WpfEdit("agentName").Set "john"
WpfWindow("Micro Focus MyFlight Sample").WpfEdit("password").SetSecure "63a57b9fda739663f7d7"
WpfWindow("Micro Focus MyFlight Sample").WpfButton("OK").Click
WpfWindow("Micro Focus MyFlight Sample").WpfComboBox("fromCity").Select "Paris"
WpfWindow("Micro Focus MyFlight Sample").WpfComboBox("toCity").Select "Zurich"
WpfWindow("Micro Focus MyFlight Sample").WpfButton("FIND FLIGHTS").Click
WpfWindow("Micro Focus MyFlight Sample").WpfTable("flightsDataGrid").SelectCell 0,3
WpfWindow("Micro Focus MyFlight Sample").WpfButton("SELECT FLIGHT").Click
WpfWindow("Micro Focus MyFlight Sample").WpfEdit("passengerName").Set DataTable("Passenger", dtGlobalSheet)
WpfWindow("Micro Focus MyFlight Sample").Close
在第一次迭代后,它在第二次迭代时崩溃,返回这个错误
Cannot find the "agentName" object's parent "Micro Focus MyFlight Sample" (class WpfWindow).
Verify that parent properties match an object currently displayed in your application.
Line (3): "WpfWindow("Micro Focus MyFlight Sample").WpfEdit("agentName").Set "john"".
i tried remove
WpfWindow("Micro Focus MyFlight Sample").Close
我还尝试在脚本的第一行添加这个
WpfWindow("Micro Focus MyFlight Sample").Activate
但似乎没有工作,我该如何解决这个
这是你所有的代码吗?
第一行,agentName
WpfWindow("Micro Focus MyFlight Sample").WpfEdit("agentName").Set "john"
是登录提示符上的用户名字段。它试图输入"john">
你的错误告诉你:Cannot find the ".." object's parent "..."
-对象的父不见了。即window对象。你是对的,它找不到窗口是因为你正在关闭它。
实现您正在尝试做的事情的最简单的解决方案是告诉UFT在测试迭代开始时打开应用程序。
- 如果您设置了
record and run settings
在按下运行时打开应用程序,请删除此。不要使用run from菜单选项,因为它隐藏了你的代码正在做什么,并且(像这个问题一样)阻止你看到真正发生了什么。 相反,将这一行添加到脚本的开头:
systemUtil.run "c:pathtoflight.exe" '(obviously update the path)