?

自動化測試

2021-09-10 17:44喻偉
家園·建筑與設計 2021年2期
關鍵詞:自動化測試

喻偉

摘要:隨著軟件工程越來越復雜,軟件的重要性也越來越大。軟件測試是一門涉及廣泛知識的學科,軟件測試行業在國內方興未艾,測試工程師門需掌握各種測試技術和工具,測試團隊的管理也需完善和提高。論文介紹了軟件測試的含義、特點,還介紹了相關一下輔助工具;還簡述了執行自動化測試的項目條件,還有測試的過程。

關鍵詞:自動化測試;手工測試;測試工具;功能測試;回歸測試

1自動化測試的含義

1.1自動化測試

自動化測試是測試人員將人工操作行為轉換為機器執行,從而減少頻繁重復工作的內容,減輕工作量,還可以達到省時省力。通常在編寫完測試用例并通過各部門的評審后,執行人員會按照測試用例描述的操作步驟依次執行測試,然后將返回內容與預期內容進行對比,驗證是否滿足實際。在這個過程,為了獲得更優秀的效率,便有了對使用機器執行操作的訴求。

自動化測試,即是使用機器替代人力進行的一系列測試驗證工作,它關注的是,整個驗證過程是由電腦按照既定邏輯自動實現的,更表現了自動化的思維。

1.2自動化和手工區別

部分測試人員和一些不明白自動化測試的程序員、產品經理、項目經理甚至老板,一直對手工測試和自動化測試這兩種方法存在很多爭議的,但其實這兩種測試方法應一直并存存在,誰也無法取締誰,各自存在不同的優劣勢。

手工測試也因有其缺點,亟需一種補充手段,在這需求背景下自動化測試應運而生,但自動化測試不應全盤接受,將手工測試棄之如敝履,因為對數據和業務邏輯的正確性檢驗、人們對美觀的具現化,這些都是人才能具備,機械在現階段技術水平暫無法踏足。

但是測試只使用手工方式,那么就會出現比較低的測試工作效率,無法實現高效率,尤其重復工作如回歸測試等,這種無味且枯燥的工作重復,就使得測試人員造成壓力、情緒低落等不良影響。這就是自動化應一種補充的手段,而不應取代手工。

1.3自動化測試的優缺點:

1.3.1優點:

1)對系統項目開展回歸驗證的更有效率。在接口層面更是效果顯著。因接口測試的實現是按照用例的操作步驟設計的,易于將結果與設計的理想值對比,機械大量一起執行,因而效率極大得到提升,加快項目進度。

2)可以執行更多重復性高的測試。無論是API還是UI自動化,可讓大量重復性的測試在極短的時間運行完畢,避免人工因大量重復造成錯漏。

3)可以執行一些手工測試幾乎不能完成的測試任務。舉例對于性能測試的執行需要幾千幾萬的人員,1s內同時點擊、秒殺,同時瀏覽商品詳情頁面,同時登錄等,但是卻可以通過,編寫腳本,通過調控并發數,模擬巨量用戶操作,完成性能檢測任務。

4)測試資源的釋放。自動化實現繁多且枯燥的操作,從而使機械式的工作狀態的人員得以解放,有有條件創造更好的測試框架和用例??梢宰寽y試人員專注于流程、業務、界面、數據驗證部分,提高手工測試的準確性和效率。

1.3.2缺點:

自動化測試無法百分百的發現系統中全部問題,但自動化測試也能發現軟件包含了負載測試,性能測試,回歸測試等百分之三十三點三的問題。而業務邏輯、頁面設計錯誤的百分之七十二點七的問題發現,則現技術不能完成,

1.4手工測試的不可替代性

工具只能執行既定策略進行測試任務,不具備自主辨別邏輯錯誤的能力,而人恰恰擅長于此,這就成了不可替代手工的原因。具體表示在以下幾點:

1)設計:測試經驗、對業務錯誤的設想能力是工具不具備的。

2)系統的體驗方面:隨機不按既定邏輯的操作,對美的理解都是工具腳本難以實現的領域。

3)正確性的檢驗:工具對正確性的判斷都來自程序員,不具備智能理解需求的能力。

2使用自動化測試的前提條件

自動化測試有其實行的前提條件,要分析系統的開發模型,與實施自動化是否適合,一般需考慮以下幾點:

2.1 需求變動是否頻繁

需求變動會引起測試用例的更新或者失效,從而相應以此為基的自動化腳本也會發生更新或者失效。當腳本發生改變后需要調試修改,甚至需要開發新的組件包來滿足測試需求,都更大了加重了測試成本。這樣與實現自動化降低測試成本的目的相違背,這樣可以將這項目的自動化測試實施標記為失敗。

對于系統整體功能需求是穩定的,修改多數存在邏輯相關較多的小部分功能時,可以有選擇地將穩定功能實現自動化。

2.2 項目周期足夠長

因自動化框架和自動化腳本編寫都是需要開發,需要一個或多個技術強、經驗豐富的測試人員或測試開發人員,成本往往不低,實現都需要一定時間,如果項目規模小,復用性比較低,那么將其測試工作自動化,明顯是一個不劃算的行動。

2.3 自動化測試腳本可重復使用

自動化腳本需要一個或多個技術強、經驗豐富的測試人員或測試開發人員,成本往往不低,所以應制定一套框架和標準提供復用性,最大化經濟效益。

2.4做“驗證”,效果更好

因為自動化測試存在一定的缺點,不擅長發現問題,而是更擅長對問題修改的驗證,或是用于對系統進行改動后,對原有功能進行可用性檢查。

3自動化測試框架的實現過程

3.1 需求分析

當項目有實現自動化的條件、技術和資源時。測試領導們就可以針對于項目開發測試過程,考慮各方面的因素,以便于后續自動化測試工作的開展實現。

3.2自動化測試框架的搭建

以小型公司UI自動化為例,用最簡單實際的方式。

3.2.1要關注業務。

當架構師或tester只為了炫技,為了實現而實現,不貼合業務,不能確實為測試工作做出貢獻,這樣偏離自動化的初衷,導致項目測試質量下降,造成損失。

3.2.2標準化,先苦后甜

有統一的技術棧,運行環境,代碼風格,使得閱讀性、可維護性都會上一個臺階,在框架工具包和test case日益增多時,更能體現標準化在效率和質量上的可貴。

3.2.3理性看待、合理運用

要計算自動化的實現成本,效益和成本的不匹配,不適合做自動化的就不要強求。但也不應自動化暫時實現得不好就否定它。未來AI發展也會影響測試行業,自動化的發展會乘風再踏上另一個臺階。

4結束語

在本論文的寫作過程中,通過上網和查閱書籍收集相關資料從中了解到了軟件測試的發展歷程,軟件自動化測試的由來,自動化測試的性能和其所用的工具,這些工具所使用的使用范圍。

參考文獻:

[1]《輕輕松松自動化測試》 作者,朱少民,由電子工業出版社于2009-7-1出版

[2]姚征。對機械設計制造及 其自動化專業課程設置的探討[J].電子制作,2014(6)。

[3]王冬冬。分析機械設計制造及其自動化中計算機技術的應用研究,2017。

沈陽理工大學應用技術學院

猜你喜歡
自動化測試
基于Java反射的APP自動化混合測試框架的研究與實現
Hadoop性能測試自動化研究
數據驅動和關鍵字驅動的研究與應用
淺談空調控制器自動化測試
基于多總線結構的電路板測試系統設計研究
航空航天與國防電子新形勢下自動化測試系統的應用
基于CTI—TET和SeleniumWebdriver的Web應用自動化測試框架的設計與實現
自動化測試實現研究
一種航空交換機中CAN總線的自動化測試方法
基于Selenium進行Web應用測試研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合