一、首先,什么是自動化測試? 自動化測試是把以人為驅(qū)動的測試行為轉(zhuǎn)化為機器執(zhí)行的一種過程。通常,在設(shè)計了測試用例并通過評審之后,由測試人員根據(jù)測試用例中描述的規(guī)程一步步執(zhí)行測試,得到實際結(jié)...
一、首先,什么是自動化測試?
自動化測試是把以人為驅(qū)動的測試行為轉(zhuǎn)化為機器執(zhí)行的一種過程。通常,在設(shè)計了測試用例并通過評審之后,由測試人員根據(jù)測試用例中描述的規(guī)程一步步執(zhí)行測試,得到實際結(jié)果與期望結(jié)果的比較。在此過程中,為了節(jié)省人力、時間或硬件資源,提高測試效率,便引入了自動化測試的概念。測試自動化可以在已經(jīng)存在的正式測試過程中自動化一些重復(fù)但必要的任務(wù),或者添加額外的難于手工執(zhí)行的測試。
二、自動化測試主要有哪些?
自動化測試一般分三種:單元自動化測試,接口自動化測試,UI自動化測試。
其中單元自動化測試一般由研發(fā)人員自己進行測試,測試人員主要進行接口以及UI的自 動化測試,但是由于UI的需求變化比較頻繁,所以接口測試是測試人員做的最多的
三、自動化測試框架設(shè)計的模式有哪些?
自動化測試框架設(shè)計的模式主要有4種:
(1)分布式。指的是測試需要在多臺電腦上進行多線程或者多進程的測試,該模式主要針對測試用例比較大的情況常用的工具是grid;
(2)數(shù)據(jù)驅(qū)動的模式。指的是講測試程序與測試所需要的數(shù)據(jù)分離,每次測試程序的時候直接調(diào)用所需要的數(shù)據(jù);
(3)關(guān)鍵字驅(qū)動的模式,該模式主要從對誰做,怎么做,做什么三個要素進行衍生,每次只需要調(diào)用關(guān)鍵的函數(shù)就可以,即使不懂代碼的人也能勾編寫?,F(xiàn)在很多的自動化測試工具例如KAMA即是如此,測試人員只需要了解測試功能的邏輯通過調(diào)用工具的內(nèi)部函數(shù)就可以編寫自動化測試腳本。
(4)混合型模式。指的是運用以上兩種或以上的方法的一種模式。
四、自動化測試的優(yōu)勢
主要具備以下優(yōu)勢:
(1)回歸測試更方便可靠,可運行更多、更繁瑣的測試,且快速高效;
(2)可執(zhí)行一些手工測試執(zhí)行相當(dāng)困難或者做不到的測試,如大量的用戶并發(fā);
(3)可以更好的利用資源,具有一致性和可重復(fù)性的特點,自動化測試腳本完全可復(fù)用;
(4)提升了軟件的可信度;
(5)可以多環(huán)境下測試等。
五、自動化測試的劣勢
(1)永遠不可能完全替代手工測試。自動化測試無法做到手工測試的覆蓋率,不是每個測試用例都適合實行自動化。
(2)手工測試發(fā)現(xiàn)的bug遠比自動化測試多。自動化測試幾乎是無法發(fā)現(xiàn)新bug的,最大的用途是用來回歸,確保曾經(jīng)的bug沒有在新的版本上重新出現(xiàn)。
(3)自動化測試工具比較死板,靈活性比較差。自動化測試的效果好壞,完全取決于測試工程師。
(4)成本投入大,風(fēng)險高。對測試人員的技術(shù)要求高,對測試工具同樣也高。
(5)測試用例需要根據(jù)版本迭代進行更新,有一定的維護成本
(6)自動化測試的產(chǎn)出價值往往在于長期的回歸測試,短期內(nèi)發(fā)揮的作用可能不明顯。
六、適合引入自動化測試的情況
(1)回歸測試,重復(fù)單一的數(shù)據(jù)錄入或是擊鍵等測試操作造成了不必要的時間浪費和人力浪費;
(2)此外測試人員對程序的理解和對設(shè)計文檔的驗證通常也要借助于測試自動化工具;
(3)采用自動化測試工具有利于測試報告文檔的生成和版本的連貫性;
(4)自動化工具能夠確定測試用例的覆蓋路徑,確定測試用例集對程序邏輯流程和控制流程的覆蓋。
(5)項目周期長,系統(tǒng)版本不斷,并且需求不會頻繁變更
(6)系統(tǒng)的測試對象基本可以正常識別,以及對無法識別的控件能否提供一個解決方案。
(7)系統(tǒng)中不存在大量的不可識別第三方控件。
(8)需要反復(fù)測試,如可靠性測試、回歸測試等需要進行上千次的系統(tǒng)測試。
七、不適合自動化測試的情況
(1)項目周期短,需求頻繁變更。即使是周期長的項目,如果經(jīng)常需求變更,也不適合做自動化測試。
(2)軟件版本沒有穩(wěn)定,主功能或大量功能有被重新更改的可能的情況下,也不適合做自動化測試。
(3)沒有明確的項目進行自動化測試計劃、措施和管理的情況。
(4)多數(shù)對象無法識別,以及腳本維護頻繁和艱難的情況下,不建議測試自動化。
最后感謝每一個認真閱讀我文章的人這些資料,對于做【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你,如果你用得到的話可以直接拿走:
需要資料點擊我的主頁加我的學(xué)習(xí)交流群