2012-01-04 32 views
3

我們目前正在測試在彈出窗口中打開的應用程序的某些部分。這些窗口是TitleWindow的子類。我們現在遇到的問題是彈出窗口似乎被多次註冊,並且測試有時會在已關閉的彈出窗口上執行(或者看起來似乎如此)。TitleWindow Popups的FlexMonkey問題

我認爲這與我們關閉並刪除彈出窗口的方式有關,但我無法真正發現任何問題。查看FlexMonkey源代碼後,我看到在ADDED_TO_STAGE處理程序中顯式檢查了「TitleWindow」,之後彈出窗口被添加爲應用程序窗口。但彈出窗口似乎從「_windows」集合中刪除。因此,當您在FlexMonkey中打開樹視圖時,會出現幾個相同彈出窗口類的實例。這可能也解釋了爲什麼我們的測試有時似乎不能運行(可視化),但是正確執行和驗證,因爲它們運行在彈出窗口的隱藏實例上。我期望MonkeyAutomationManager還可以監聽REMOVED_FROM_STAGE事件,並在關閉時刪除彈出窗口。

我在這裏錯過了什麼或這是一個(已知)的問題?

回答

1

我的猜測是,這不是一個問題,只是你的代碼沒有正確地清理對象並將它從顯示列表中刪除。您還需要記住,從舞臺上移除某些內容後,垃圾收集器無法正常運行。有可能你的窗戶即使已經從舞臺上移開,實際上仍然在傾聽和響應事件。