VS2010UI測試之旅
開始我們的第一個UITest文件
下面就真正地開始VS2010的UI測試之旅。
1. 建立一個Test Project。
2. 新建完測試工程后,要建立一個Test,我們要做的是UI測試,所以這里選擇的是“Coded UI Test”
3. 新建完Test之后,會有一個提示框彈出,詢問你是想怎么創建UI測試,這是會選擇“錄制操作、編輯UI映射或添加斷言”
4. 這時屏幕右下角會出現UI測試生成器。
5. 本例中以PSD系統為例來對SliverLight的UI進行測試。
6. 點擊“開始錄制”按鈕。
7. 打開要錄制操作的SliverLight頁面,進行相應的操作。這時可以在UI測試生成器處看到一些相應操作的名稱以及操作對象的名稱。做完一系列操作后,點擊“停止錄制”按鈕,這時點擊代碼生成按鈕。就會出現下面的對話框,將剛剛的操作生成一個方法,方法名稱可以自定義。
8. 當代碼生成完畢后,面板上的準星可以使用。點擊準星不放,拖動到想要錄制的對象上,放開鼠標。
剛剛被選中的對象并且添加到對象庫的對象。注:要點擊左上角的,這樣才能將選中的對象添加到對象庫中,生成代碼時被初始化。
9. 添加斷言。
同步驟8一樣,但是在右側面板中選擇Exits屬性,值為TRUE。
然后點擊“添加斷言”按鈕。
這里我們要選擇AreEqual,值為True。表示,我們確定UIBingosoftPSDSliverliButton1這個按鈕存在,如果在運行測試的時候,該Button存在,則pass,否則fail。
10. 點擊代碼生成按鈕,為剛才添加的斷言生成判斷方法,方法名稱可以自定義。
11. 點擊VS2010中的運行按鈕。
VS2010會自動演示剛才的操作,并且顯示運行結果。
VS2010生成的代碼到底放在了那里?
下面我們來看一下VS2010生成的代碼放在了哪里。
1. 我們來看一下工程的目錄結構,不難發現,錄制時自動生成了.uitest文件,并且所有的方法代碼都在.Designer.cs文件中。
雖然UIMap.cs和UIMap.Designer.cs是同時生成的,但是VS自動生成的代碼放在.Designer.cs文件中。而在.cs文件中,可以放置一些自己編寫的代碼。
2. 但是最主要的還是.uitest文件,雖然.Designer.cs文件中放置的是生成的代碼,但是會隨著.uitest文件中的內容變化而變化。所以在Coded UI Test中,主導代碼生成的還是.uitest文件。下面我們來看一下.uitest文件的結構。
.uitest文件的結構主要包括
其中InitializeActions,ExecuteActions,CleanupActions,OnErrorActions都是對于操作動作的描述:
InitializeActions:指初始化需要執行的操作動作
ExecuteActions:只測試過程中的操作動作(通過錄制所生成的操作都默認放在ExecuteActions中)
CleanupActions:指測試完畢需要清理資源的操作動作
OnErrorActions:只帶異常處理的操作動作
他們都對UIMap.Designer.cs操作動作部分代碼的生成和參數的生成有直接的影響。
嚴格地說,放在InitializeActions中的操作動作和放在ExecuteActions,CleanupActions,OnErrorAction的動作沒有任何本質上的區別,僅僅只是從一個代碼可讀性上的考慮。
文章來源于領測軟件測試網 http://www.kjueaiud.com/