您好,登錄后才能下訂單哦!
我接觸了太多測試同行,由于多數同行之前一直做手工測試,現在很迫切希望做自動化測試,其中不乏工作5年以上的同行。 我 從事軟件自動化測試已經數年了,接觸過底層服務端、API 、Web、APP、H5 等等,對自動化算是比較了解。在此分享一下個人經驗。
如果對自動化完全不了解,每天在那嚷嚷要做自動化,都是空喊。
所以 想做自動化, 首先 得了解一下自動化測試的一些常見問題。
1. 什么是自動化測試?
自動化測試,顧名思義,自動完成測試工作。
通過一些自動化測試工具或自己造輪子實現模擬之前人工點點/寫寫的工作并驗證其結果完成整個測試過程,這樣的測試過程,便是自動化測試。
因為每一個自動化測試的case都是從手工測試做起的, 所以自動化測試的基礎是手工測試 。
2. 為什么要進行自動化測試
1)自動化測試節約成本(根據項目)
2)有些測試項目手工很難實現(手工成本較高)
3)項目質量流程需要
3、自動化測試的優勢及劣勢
優勢: 回歸測試更方便可靠;可運行更多,更繁瑣的測試,且快速高效;可執行一些手工測試執行相當困難或者做不到的測試,如大量的用戶并發;更好的利用資源,具有一致性和可重復性的特點,自動化測試腳本完全可復用;提升了軟件的可信度;多環境下測試等。
劣勢: 維護成本相對比較高
系統開發時間不一定能縮短
還是得依賴手工測試,很多問題無法發現
4、自動化測試分類
按測試目的分類大致可劃分為:功能自動化測試,性能自動化測試
按測試對象可以劃分為:Web應用測試,APP測試,接口測試,單元測試等
功能自動化
測試目的是發現軟件中實現功能是否符合用戶需求規格,實踐證明,往往我們實施UI自動化測試的目的不是去發現軟件系統中的缺陷,更多的是為了驗證系統是否可以正常運行。
除了可以基于UI進行自動化測試,我們還可以基于網絡服務接口提供者進行測試,基于接口進行功能測試較為常見,也是非常有效的手段。
另外還可以基于系統基礎代碼進行測試,比如單元測試,集成測試階段,這一階段的測試也稱白盒測試,我們可以直接對DAO,Service服務進行測試,這里常用的測試技術包括Junit, TestNG, Mock, Stub等 。
跟大家推薦一個學習資料分享群:903217991,里面大牛已經為我們整理好了許多的學習資料,有自動化,接口,性能等等的學習資料!人生是一個逆水行舟的過程,不進則退,咱們一起加油吧!
性能自動化
性能自動化測試是通過測試工具模擬高并發負載進行壓力測試,以發現軟件系統在高負載情況下運行瓶頸, 包括 應用程序本身的性能瓶頸,網絡瓶頸,服務器硬件資源瓶頸,數據存儲服務器等,通常唯有借助自動化測試工具來完成,常見的性能測試工具包括,Loadrunner, Jmeter, Ngrinder, Gatling等,不管哪一款測試工具,基本有三大部分組成:測試腳本管理,測試場景配置,監控結果。
與功能自動化類似的是,性能測試工作對象也可以面向用戶UI層,或者服務接口提供方,甚至可以直接面向底層基礎業務邏輯層,絕大多數通過用戶層進行性能測試模擬的是最接近真實用戶場景的測試,也是性能測試必然實施的階段 。
6、 自動化測試的流程
7、 自動化測試常用工具
下面 我 簡要的羅列常見的測試,以及適合其最佳的測試工具。
性能測試工具 :Loadrunner,Jmeter,Ngrinder,Gatling,每款測試工具存在一定的差異及其局限性,可以參考相關文檔詳細了解。
功能測試工具 : Selenium, QTP
APP自動化測試工具 :Appium, UI Automator, MonkeyRunner, Android UI測試推薦使用UI Automator, 是Android提供的自動化測試框架,基本上支持所有的Android事件操作。IOS應用程序可以選擇使用Appium。
接口自動化測試工具 :Junit,TestNG, OKhttp, HttpClient,Spring Restful等,需要有一定的編碼經驗,當然也有現 成的工具,比如Postman,HttpRequester,SoapUI等。
單元測試工具 :Junit, TestNG, EasyMock, Mockito, JMockit等
8、什么條件的人適合做自動化測試
1)擁有代碼能力
掌握一門開發語言,java、Python、ruby、c#
2)熟悉被測系統
比如你是web測試,你就得懂js、css、html、xpath
你是移動端測試,你就得具備Android 開發基礎和iOS開發基礎,會debug app
你是C/S測試你就要很熟悉TCP、IP協議
3)掌握一套自動化測試框架(工具)
比如selenium/appium ; nunit/testng ; robot framework/cucumber
4)善于學習,達到知其然知其所以然
IT行業變化太快, 新興的東西出現的頻率快,只有不斷地學習,才能與時俱進,不被淘汰。
總而言之
學習一門開發語言Java/Python,學習一個測試工具selenium/appium,掌握一個測試框架,平時多沉淀,然后抓住機遇,即可輕而易舉的轉型自動化測試。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。