UI自動化測試不要走火入魔

UI Automation Out of Control
http://blogs.msdn.com/imtesty/archive/2009/08/01/automation.aspx

August 01, 2009
Posted by I.M.Testy

作者提出一些在做UI自動化要小心的事情, 大家可以看看:

1. 並非所有自動化UI測試都節省時間
測試人員可能花很多時間在調整或修改自動化的程式(可能因為畫面一直在修改或是微調), 導致維護的時間非常的多

2. 有時候人可能比電腦演算法還要有效率
有些狀況下只要肉眼便可以簡單比對, 可是寫程式會需要大量的時間.

或者有些檢查是無法用程式計算出來的, 例如圖形柔和程度, 或是清晰程度等等, 不見得是自動化測試完全可以幫忙的

或者當有些檢查項目, 人可以隨著時間自行調整增加或是減少, 但是自動化程式只能固定要檢查的項目

3. 不要依賴自動化測試去模擬你顧客的行為
雖然UI自動化會向人們一樣, 點點滑鼠, 移動游標, 像鍵盤一樣輸入一些資料.可是這跟真實人們的動作還是有很大的落差.

有關於 usability, ease of use, or other customer value type assessments的問題是無法這樣找出來的. 最好的方法還是藉由internal 和external的顧客, 在日常生活中, 實際使用的軟體來得到真正的feedback
 
4. 要去看看UI以下的東西
有些測試人員太依賴從UI來驗證系統是否正確, 所以在做自動化測試時, 也是採用相同的方法, 從來沒想去看看UI以下的東西.

有時不透過UI去做測試, 像是直接察看API, 查看DB內容, 或是設定檔內容. 其方法可能可以存活好幾個版本, 因為他們在大多版本中可能都會不變. 可能會導致測試程式更簡單.

5. Constantly massaging code contributes to false negatives!
我看過很多狀況, 測試人員在設計UI自動化時, 常常東調西調的, 才能使程式實行成功. 可是這樣頻繁的微調, 導致測試人員沒有時間去探索受測系統有人什麼問題, 甚至還可能會掩蓋了其他問題.

其它像是大量使用sleep等方式, 導致測試系統的執行時間變長. 或者是hard code某些東西, 導致這程式只能在某些機器上執行.

6. 停止嘗試去自動化每一個測試
我們對某些項目做自動化, 並不意味我們要對所有項目進行自動化.

我們必須作出合理的決定如何進行自動化測試,以及什麼是最好的辦法去實現自動化測試.


    全站熱搜

    kojenchieh 發表在 痞客邦 留言(1) 人氣()