與手動測試相比,軟件測試自動化具備許多優點。它改善告終果和質量,提升了可靠性,並減小告終果誤差。此外,它還能夠加快流程,增長覆蓋率測試並最終提升軟件的總體質量。良好的自動化能夠提升交付質量,增長測試範圍,下降測試成本,並在進行了正確測試後可以儘早發現錯誤。java
測試自動化中的主要問題之一是選擇要自動化的測試用例。可是,有人怎麼知道全部測試用例將被自動化呢?編程
本文緊接上期: 自動化如何選擇用例內容,讓咱們看看其餘一些有關如何選擇要自動化的測試用例的技巧和規則。瀏覽器
這是黃金法則。若是測試運行是重複的,則應使其自動化。這樣能夠節省您寶貴的時間和精力。另外,若是這是您假設未來會常常運行的測試,那麼自動化是一個很好的辦法。每次將更快得到更準確的結果。安全
若是一個測試用例人爲執行過程當中發生錯誤和被破壞的風險很大,或者手動測試很難完成,則應該優先使用自動化測試。若是涉及的風險很高,則應使該測試用例自動化。框架
自動化應用程序的主流程用例是一個很是不錯的實踐。避免人爲錯誤的任何可能性,而且要安全、快速。對於可能危害整個項目的測試用例更應該優先進行自動化測試。性能
須要進行大量數據和條件測試的場景更適合自動化測試。另外,在手動測試過程當中犯錯的機會可能會增多。這就是測試一般使用測試驅動模型的重要緣由,咱們主要是指那些須要填寫較多表格的測試用例。測試
經過評估完成自動化過程或手動進行測試所需的時間。若是某些項目並不適合在自動化測試上投入時間,自動化測試過程自己比人工測試要花費更多的時間,代表自動化是不值得的。ui
涉及自動化時,不該該質疑三個測試用例:迴歸測試,冒煙測試和健全性測試。爲何?由於該應用的每一個內部版本或發行版本都須要測試。命令行
永遠不要僅僅由於能夠自動化就能夠自動化測試用例。這可能帶來的結果是弊大於利。日誌
請記住,關於自動化的「爲何?」問題的答案必定不能是「由於我能夠」。
不少測試用例須要設定不少的前置條件,而這些前置條件的設置一般是比較複雜的,這類用例是須要優先進行自動化,由於能夠節省不少時間,即便僅僅是爲功能測試作一些自動化的腳本。
一般選擇自動化性能測試,例如負載測試和壓力測試,這類測試手工很難達到預期效果。
若是測試用例時間跨度較長,一般十幾分鍾或者幾個小時,則應將其自動化。