我正在使用LDTP在python中编写GUI测试用例脚本。我通过鼻子测试在虚拟机中运行脚本。

我得到一个错误为unable to find window X的块,而窗口X绝对显示在监视器上。 LDTP操作之后始终会发生此错误。

示例:

在虚拟机(rhel6.8)中打开订阅管理器后,可以通过调用来找到订阅管理器getwindowlist()

>>> getwindowlist()
['frmTopExpandedEdgePanel', 'frmBottomExpandedEdgePanel', 'frmroot@localhost:~',
 'frmx-nautilus-desktop', 'frmSubscriptionManager']


然后我使用getobjectlist()进行一些操作:

>>> getobjectlist('frmSubscriptionManager')
['flr8', 'flr4', 'mnuAbout', 'flr6', 'flr7', 'flr0', 'flr1', 'flr2', 
'flr3', 'ukn2', 'ukn3', 'ukn0', 'ukn1', 'scpn1', 'scpn0', 'scpn3', 'scpn2', 
'lblStatus1', 'lblContract', 'ptl0', 'flr5', 'txtStartEndDateText', 
'tblBundledProductsTable', 'scbr0', 'mnuRedeemSubscription', 
'tchEndDate', 'lblStatus', 'mnuSystem', 'mnuRegister', 'tchStartDate', 
'lblSKU', 'txtSKUText', 'txtProvidingSubscriptionsText', 'tchQuantity', 
'txtSupportTypeText', 'ttblMySubscriptionsView', 'mnuEmpty', 
'txtArchText', 'mnuConfigureProxy', 'txtSupportLevelAndTypeText', 
'mnuHelp', 'mnuOnlineDocumentation', 'lblStart-EndDate', 'mbr0', 
  ......etc]


窗口消失了,甚至尽管它仍然显示在我的虚拟机的监视器上。

>>> getwindowlist()
['frmTopExpandedEdgePanel', 'frmBottomExpandedEdgePanel', 'frmroot@localhost:~', 'frmx-nautilus-desktop']


为什么会出现此错误,我应该如何在自动测试中处理这种情况? >