2016-09-28 30 views
0

有什麼方法可以跟蹤或記錄Pywinauto中的錯誤(例如彈出式窗口不會出現,等等)?我試圖跟蹤一個窗口是否正確打開。我也在嘗試驗證Excel工作表中的值。這可能嗎 ?哦!是的,我是Python和Pywinauto的新手。感謝你的協助 !!Pywinauto跟蹤或記錄錯誤與應用程序?

+0

您可以通過顯示自己已經完成解決問題的方式來改善您的問題。這裏似乎有兩個問題:試着讓一個帖子只包含一個問題。 –

+0

你是對的。我想知道是否有方法使用PyWinAuto記錄錯誤。假設我打開Excel工作表並查看單元格(1,3)的內容。單元格(1,3)沒有預期的值。 PyWinAuto可以創建一個日誌,說明該值不正確? –

回答

1

爲了使用MS Excel,我會推薦使用標準的win32com.client模塊(它包含在ActivePython中,或者可以通過pip install pypiwin32安裝pyWin32擴展)。幾乎每個微軟應用程序都有很好的IDispatch COM接口。順便說一下,標準文檔示例顯示了MS Excel的用法。 ;)

對於處理窗口打開pywinauto包含.Wait('ready')窗口規範的方法。所以,這樣的事情應該工作或故障的情況下拋出異常:

app.MainWindowTitle.Wait('ready') # 'ready' == 'exists visible enabled' 
# or 
app.Window_(title_re='^some regular expr - .*$', class_name='#32770').Wait('visible enabled') 

你可以做同樣的,如果窗口正在關閉:

app.SomeDialog.WaitNot('exists', timeout=20) # default or implicit timeout is 5 sec. 

如果需要bool返回值而不是引發例外,則使用方法.Visible(),.Exists(),.Enabled().IsActive()