什么是Test Automation 作者: 關河 來源: 關河的 php ?name=%B2%E2%CA%D4">測試 生活 追求問題的定義往往是一件非常好玩的事情。比如,這篇文章的標題:“什么是Test Automation(測試 自動化 )?” 許多人都在談論 測試自動化 ,但是要談論測試自動化的人
作者: 關河 來源: 關河的
php?name=%B2%E2%CA%D4">測試生活
追求問題的定義往往是一件非常好玩的事情。比如,這篇文章的標題:“什么是Test Automation(測試
自動化)?”
許多人都在談論
測試自動化,但是要談論測試自動化的人對測試自動化進行一個明確的定義,卻不是一件容易的事情。不信,我們來看看:
1,一種字面上的解釋,“
自動化測試”可以被定義為“以自動化的方式完成測試”,表面上看上去,這個定義完美無缺——從自動化測試的發展來看,目前的自動化測試在大多數情況下是將
手工測試的過程變成了自動化測試的過程,因此,“以自動化的方式完成測試”應該是自動化測試的發展趨勢。但是,讓我們設想一個場景:在某些難以完全采用自動化測試的方式下,
CC%CA%A6">測試工程師寫一段代碼,然后通過人工觀察代碼執行的結果來判斷測試通過與否,這是否應該被歸在自動化測試的領域呢?——我們這里描述的場景顯然不是完全以自動化方式完成測試的一個例子。
2,如果我們將自動化測試的定義擴展一下,應該怎么來描述呢?一時間還真的很難找到一個合適的定義?;蛘?,“嘗試通過代碼或是其他手段擺脫完全的人工測試的方式”就應該被歸入自動化測試?不過這個定義實在拗口:)
其實,在目前的
測試環境下,自動化測試和手工測試之間往往并沒有明確的界限。很多測試往往并不能完全通過自動化測試完成,自動化到不需要人工參與的程度是不現實的。而且,自動化測試并不是測試的最高境界——實際上,手工測試在發現
缺陷,設計
用例方面顯然比自動化測試有更大的優勢。因此,我們在談論自動化測試的時候,不是要把手工測試從
測試過程中驅趕出去,也不是要用自動化測試替代掉所有的手工測試。
套用一句俗套的話,“在可預見的將來,自動化測試和手工測試將會和平共存一段相當長的時間”。