2013-08-06 48 views
1

背景:我剛學習編碼的UI。這是來自使用VS 12的WPF中的簡單測試應用程序。如何編寫Treeview.ItemsSource的編碼UI聲明> 0

我已經創建了一個編碼的UI測試項目和一個編碼的UI測試。

我記錄了打開應用程序,單擊按鈕,然後關閉應用程序,它將在測試運行中通過此運行。

現在我想添加一個斷言到樹視圖。場景是一個用戶打開一個文件,並加載一個樹形視圖,我想確保樹形視圖中至少有一個項目。

因此,我運行該exe文件,打開Coded UI測試生成器並將十字線拖動到Treeview。它成功地突出了TreeView。然後顯示Add Assertions對話框。

TreeView顯示在對話框中,但沒有ItemsSource的「控件特定」屬性。它只顯示5個控件特定的屬性,例如HelpText,AccessKey等。

我可以爲HelpText添加斷言,但這不是必需的。

所以這個問題,爲什麼不是在聲明對話框中顯示ItemsSource?

如何讓它顯示?

回答

0

將十字線工具拖動到UI控件上後,將顯示斷言對話框。在Add Assertion按鈕右側有四個箭頭,分別爲上,下,左和右。點擊這些允許選擇的控件在兄弟姐妹(左和右),祖先(上)和子女(下)之間改變。使用這些按鈕來瀏覽樹形控件。我不知道你正在查看的特定樹中的「ItemsSource」是什麼,它可能不是樹的暴露屬性,即使它是實現或API的一部分。可能有樹的某些部分的其他屬性具有所需的值。

我不相信Coded UI可以生成一個斷言來測試該樹至少包含一個項目。我相信你需要手動編寫這個部分。我首先想到的是獲取樹的UIControl對象,然後使用它的GetChildren方法來查找樹中的項目。這可能需要遞歸才能獲取樹中的所有元素。

+0

我會試試看。 –