GUI自動化測試的反思

發表于:2012-08-08來源:msdn作者:cheno點擊數: 標簽:自動化測試
加過不同類型的GUI測試項目,其中包括Java SWING, Web Page, Flash, WinForm, Excel Addin等??偨Y起來,有以下幾點值得反思的。 1)通常GUI自動化測試的ROI是非常低的。這

  加過不同類型的GUI測試項目,其中包括Java SWING, Web Page, Flash, WinForm, Excel Addin等??偨Y起來,有以下幾點值得反思的。

  1)通常GUI自動化測試的ROI是非常低的。這些GUI項目大多都經常改變界面,甚至每幾個月都需要更改界面,這使得自動化測試用例管理和維護變得非常復雜。GUI自動化最大的弊病在于:它發現Bug的可能性很小,在這些的GUI項目中,通過自動化用例發現的Bug屈指可數,99% 失敗的用例都是由于環境或則測試用例本身的原因導致的,而不是發現任何產品Bug。當然,不同項目有不同的特性,Brain Marick有一篇全面關于評估是否自動化測試的文章,可以幫助作出決定。

  Alan Page是微軟的第一個測試架構師(Test Architect,2001),現在負責微軟測試的EE工作。他最著名一句話就是“95%的GUI自動化測試工作都是浪費時間”,他本來寫的99%,但是為了表示他并非反對GUI自動化測試,他把這個數字改成了95%。

  2)GUI自動化測試可以提高測試人員的士氣。有些測試人員不愿意單單做手工測試,他們需要一些挑戰,自動化測試是最好的任務。對于自動化測試,測試人員總是可以根據自己的能力,完成自動測試用例的開發和部署。提高測試人員的士氣,比這些自動化測試本身更加有意義。所以,在一定程度上引入自動化測試,是對項目組有好處的。

  3) GUI自動化測試無法代替手動測試,無法模擬用戶的行為。對于GUI測試,我相信手工測試仍然是最重要的測試方法,測試人員在測試GUI軟件過程中,有不同操作方法和不同的次序,所有這些變化是一個巨大的組合,無法通過自動化測試完成,很多情況下,也沒有必要通過自動化完成。測試人員在手工操作軟件過程中,每一步驟都通過思考來驗證當前狀態的正確性,而這些復雜的思考無法簡單快速的轉成自動化用例的驗證部分。

  4) GUI自動化測試的進度往往是無法按時完成的。很多測試人員在制定GUI自動化測試的初期,往往過于樂觀,希望通過自動化覆蓋盡可能多的測試用例。但是,在項目執行的后期,他們發現需要忙于手工測試,另外產品也不穩定,無法順利完成既定的自動化測試用例,總有很多客觀的理由無法完成最初的計劃。通常這個時候,他們會改變計劃,減少自動化測試用例的數量,而將自動化測試用例僅僅用于基本測試(BVT,Build Verificaition Test)。這些計劃的改變,某種意義來說,也是測試資源的浪費。

  進行GUI自動化測試并非難事,但是如何利用自動化測試來進行高效的GUI測試工作是需要豐富的經驗。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97