這個目標看起來似乎沒有任何毛病,但具體執行起來的時候,在“簡單的內容先自動化”的思想的指導下,我們做了很多測試邊界的腳本。(什么叫測試邊界值的腳本呢。比如一個接口的配置是允許輸入(1,5),邊界值就是0,1,5,6,邊界值的腳本就是測試數據為0、1、5、6的腳本)。
由于我們的目標是要100%的回歸測試,但我們當時并沒有一個標準的回歸測試用例集。那些簡單的邊界值腳本就自然而然的都成為了回歸測試用例集。后來項目壓力壓下來,做自動化的時間變少了,為了達到自動化率的目標,我們甚至發展到把一個測試邊界的腳本,拆成多個腳本(比如上面那個例子,測試數據為0、1、5、6,本來一個腳本就可以測試完,我們卻偏要寫4個腳本),這樣,我們“很聰明”的達到了自動化測試的目標。
但這樣的自動化,我們自己都不不太想去運行,因為我們自己心里清楚,這樣的腳本,運行不運行又有多大的意義呢。
這次經歷讓我對自動化測試有了新的思考:
自動化的腳本要開發哪些內容,不應該在自動化開發的時候才來決定,而應該是事先就確定好了的。換句話說,測試用例是自動化的基礎,有明確的測試用例才能保證自動化測試的內容符合預期目標。
沒有考慮項目進度會影響到自動化測試這個風險,也沒有考慮自動化實現時會不會有什么問題或困難,就輕易承諾100%的自動化率,盲目追求自動化率,使得最后大家花精力開發出來的自動化腳本沒有太大的作用。
歸根到底,還是沒有做好自動化的準備。
我們在做自動化測試的時候,很容易只是盯著自動化,僅從自動化這個方面去思考,把自動化當成了一種很高級的測試,去設計自動化的框架,組織等,卻忽
原文轉自:http://gitbook.cn/books/58d23ddcfa7558521a30277a/index.html