2013-07-09 82 views
0

我正在使用Visual Studio Premium 2012爲我的.Net應用程序創建自動UI單元測試。點擊其中一個頁面上的提交按鈕,即會打開一個彈出窗口。我可以通過關注彈出窗口來添加斷言條件。然而,我面臨的挑戰是 - 我的UI測試失敗了,我添加了彈出窗口的斷言條件。它總是試圖匹配主窗口本身的彈出窗口斷言搜索屬性並失敗。錯誤消息說預期值與實際值不匹配。我該如何正確定位彈出窗口?自動編碼的UI測試 - Visual Studio 2012

回答

0

一般而言,您需要將其他SearchPropertiesFilterProperties添加到UI圖中的控件,以便可以識別正確的控件。尋找與主窗口不同的彈出窗口的最外層控件的某些功能。理想情況下,這兩個應該有不同的頭銜,我希望這足以區分它們。

嘗試使用十字準線工具來探索彈出窗口和主窗口的屬性。與「添加斷言」按鈕相鄰的是四個小箭頭(上,下,左和右)。使用這些箭頭查找兩個窗口的頂層控件,然後查看它們的屬性。

如果不能訪問應用程序和編碼UI測試的代碼,就很難準確確定您需要做什麼。

更新

檢查SearchPropertiesFilterProperties記錄兩個窗口(要不是看在uimap.designer.cs文件或查看兩個窗口的屬性,然後單擊收藏省略號)。應該有差異來允許編碼UI找到一個或另一個窗口。您可能需要添加更多搜索或過濾器屬性。看看十字線工具顯示的屬性,以查看哪些項目可用於區分這兩個窗口。根據評論中的文字,您可能會發現可以使用contains比較器而不是equality來添加URI。

+0

感謝您的詳細回覆。我使用十字線工具和向上/向下箭頭導航到彈出窗口的最外層控件。最外面的控件是彈出窗口本身。所以,我使用彈出窗口的URI(與主窗口不同)來添加斷言。仍然斷言失敗說URI的預期值不符合實際值。它將實際值顯示爲主窗口的URI。從這裏,我明白它不是定位彈出窗口,並總是試圖在主窗口本身中找到搜索屬性/控件。 –

+0

順便說一句 - 我必須使用URI而不是標題,因爲兩個窗口共享相同的標題(這是應用程序名稱)。 –

+0

@Test_User已經擴展了答案。 – AdrianHHH

相關問題