我正在進行UI測試自動化,並且注意到通常AutomationElement.FromHandle速度非常快,但有時候需要30秒才能返回AutomationElement。從我有限的日誌記錄中,只需要少於100ms或完整的30秒即可獲得AutomationElement。有沒有其他人看到過這種類型的問題?AutomationElement.FromHandle()執行時間間歇性地減慢
我承認我沒有對這個問題的重複性做過多的調查,所以我不知道在測試的應用程序中是否存在潛在的控制類性能問題。
我正在進行UI測試自動化,並且注意到通常AutomationElement.FromHandle速度非常快,但有時候需要30秒才能返回AutomationElement。從我有限的日誌記錄中,只需要少於100ms或完整的30秒即可獲得AutomationElement。有沒有其他人看到過這種類型的問題?AutomationElement.FromHandle()執行時間間歇性地減慢
我承認我沒有對這個問題的重複性做過多的調查,所以我不知道在測試的應用程序中是否存在潛在的控制類性能問題。
不知道這是否有幫助,但是:當您在後臺使用FromHandle時,UIAutomation使用SendMessageTimeout或類似方法向目標窗口發送WM_GETOBJECT消息。如果目標UI被凍結或忙於做其他事情,則SendMessageTimeout將會阻塞,直到發生超時;這可能是間歇性障礙的一個原因。您可以通過使用SendMessageTimeout將WM_NULL發送到相同的HWND來「ping」它來檢查這是否是原因,如果這也阻塞了,那麼您知道問題是目標UI忙/然後。