酷知百科網

位置:首頁 > 遊戲數碼 > 互聯網

自動化測試基礎

互聯網2.21W

自動化測試就是以程序測試程序,以代碼代替思維,以腳本的執行代替手工測試。

操作方法

(01)1、什麼是自動化測試以程序測試程序,以代碼代替思維,以腳本的執行代替手工測試。自動化的測試涵蓋了:功能(黑盒)自動化測試,功能(白盒)自動化測試,性能測試,壓力測試,GUI(Graphical User Interface)測試,安全性測試等。

(02)2、自動化測試的優勢迴歸測試更方便可靠 ;可執行更多,更繁瑣的測試,且快速高效;可執行一些手工測試執行相當困難或者做不到的測試,如大量的用戶併發;更好的利用資源,具有一致性和可重複性的特點,自動化測試腳本完全可複用;提升了軟件的可信度;多環境下測試等。

(03)3、自動化測試無法做到的事以及劣勢永遠不可能完全替代手工測試,自動化測試無法做到手工測試的覆蓋率,不是每個測試用例都適合做成自動化,如建議一個頁面的佈局是否正確。手工測試發現的缺陷遠比自動化多。自動化測試是幾乎無法發現新缺陷的,最大的用途是用來回歸,確保曾經的bug沒有在新的版本上重新出現。自動化測試工具是死的,它不具備任何想象力。自動化測試的好壞,完全取決於測試工程師。成本投入高,風險大。對測試人員的技術要求高,對測試工具同樣有要求。

(04)4、合適引入自動化項目週期長,系統版本不斷,並且需求不會頻繁變更,此時是適合引入自動化測試的。系統的測試對象基本可以正常識別,以及對無法識別的控件能否提供一個解決方案。系統中不存在大量的第三方控件。需要反覆測試,如可靠性測試需要進行上千次的系統測試。

(05)5、不適合自動化項目週期短,需求頻繁變更。即使是週期長的項目,如果經常需求變更,也不適合做自動化。軟件版本還沒有穩定的情況下,主功能或大量功能有被重新更改的可能話,也不適合做自動化。沒有明確的項目測試自動化計劃,措施和管理。多數對象無法識別,以及腳本維護頻繁與艱難,二者有其一,自動化必定失敗。

(06)6、自動化測試的流程

自動化測試基礎

(07)合理的自動化切入點:通常,項目只有經歷了完整的系統測試之後纔算具備了基本的引入測試自動化的條件。測試自動化分析:(1)可行性分析(2)抽樣demo分析,demo一般選取冒煙測試用例,檢查腳本是否能夠成功執行透過,已設計的測試點是否全部執行(3)測試需求分析,分析哪些功能點準備進行自動化測試計劃定製:自動化測試計劃越全面,後期越能循規蹈矩的去實施,自動化測試的成功率越高自動化測試設計階段:主要分爲自動化測試框架和自動化測試用例。(1)自動化測試框架的設計,開發與搭建:應能保證測試的分佈執行,腳本模組化,數據驅動,日誌分析,錯誤截圖,報表回收,共享對象庫,公共函數庫,環境配置,統一設計模式,異常處理,場景恢復的一個無人值守的,針對每個獨立項目的測試框架(2)自動化測試用例設計三部曲:手工測試用例是從無到有,然後自動化測試用例是根據手工測試用例來寫的。首先,篩選手工測試用例。然後轉換手工測試用例,最後新增&補充自動化測試用例。爲什麼不能用手工測試用例完全替代自動化測試用例?自動化測試用例的範圍往往是核心業務流程或者重複執行率高的,自動化測試的覆蓋率不能達到手工測試的覆蓋率。自動化測試的用例選擇一般以正向爲主,而反向的情況卻有很多,但是並不是所有反向情況自動化測試都會涵蓋,而是有篩選的選取一部分。也並不是所有的手工測試用例都可以用來做自動化的,如頁面佈局的檢查。手工測試可以不需要回原點,但是自動化測試往往是必須的。自動化測試用例與手工測試用例不同,不需要每個步驟都寫預期結果。

(08)測試腳本設計與開發:測試腳本大致可劃分爲五種,(1)線性腳本:透過錄製直接產生的線性可執行的腳本(2)結構化腳本:具有順序,循環,分支等結構的腳本(3)可共享腳本:可以被多個測試用例使用,被其他腳本調用的腳本(4)數據驅動腳本:測試數據跟業務流程控制分離的腳本,透過讀入數據檔案來驅動流程進行的腳本(5)關鍵字驅動腳本:腳本,數據,業務分離,數據和關鍵字在不同的數據表中,透過關鍵字來驅動測試業務邏輯。關鍵字驅動的特點是,它更像是描述一個測試用例在做什麼,而不是如何做。自動化測試執行:(1)無人值守的測試:環境搭建,部署與配置;自動化測試用例與測試腳本相互綁定;自動化測試用例執行順序排列與組合(2)異常處理與場景恢復提交自動化測試產物:大致需要提交執行情況,測試結果,分析報表,測試報告,質量情況等。測試腳本維護:嚴格來講,每個階段都在做測試腳本維護。一個不值得維護的自動化測試項目是不值得立項的。

標籤:自動化 測試