軟件測試入門一(認識軟件測試)
一、什麼是軟件測試工程師
軟件測試工程師:研發屬於產品的生產者,測試屬於產品的質檢人員,為了保證產品上線不會出現缺陷,測試體現了重大作用,往往將產品的缺陷在測試過程中發現,並得到修改,這樣的產品上線,才能更好的得到使用者的認可和體驗。帶有缺陷的產品往往會給使用者和經營者帶來重大損失,比如:某平台出現折扣券無限使用的bug,給經營者帶來了重大的損失。可見測試人員的重要性。
二、軟件測試工程師的分類
目前社會面試的技術種類主要有:業務測試(功能測試)、性能測試、接口測試、自動化測試、安全測試、測試開發,所謂的滲透測試、精準測試啥的不需要了解,這些要求在公司招人方面要求太少。
1、功能測試(業務測試)
功能測試:簡單的來說就是對產品進行系統性的測試,難度最低,但是想要做好功能測試,也並不簡單。如果一個測試人員能夠對產品場景設置的測試用例覆蓋的全,那麼這個產品的質量就越高。技術難度低,容易入門,技能要求:數據庫、Linux、接口請求
2、性能測試
性能測試:顧名思義就是產品的性能如何,比如淘寶在雙12期間,千萬級別用戶的訪問量,需要通過測試手段驗證服務器能不能承受得住如此巨大的訪問。性能測試在產品用戶數量越大的情況下,重要性越大。
主要通過自己開發的功能或者開源的、收費的功能進行測試,難度較高,常用的工具LoadRunner。簡單的性能測試比較容易,對於要求很高的場景,比如全鏈路的壓測要求較高。
3、接口測試
接口測試:通過對接口進行請求,驗證接口的返回情況是否正確。難度中等,邏輯能力要求較高,一個測試人員,如果能夠對接口的請求參數場景設計覆蓋率越高,那麼這個接口的準確性就越高。
4、自動化測試
接口自動化、UI自動化
接口自動化測試:大白話。通過自動化測試工具對大量接口進行自動測試。工具代替人工,完成一次自動化程序開發,可以對程序進行反覆測試。目前大多數公司都希望測試人員能夠通過自動化程序對產品進行測試。含金量較高,功能測試的進階。
優點:版本迭代、回歸測試可以節約人力成本,提高測試效率。缺點:維護成本、代碼能力要求。
UI自動化測試:通過自動化程序對程序進行功能測試。效果和接口測試類似,缺點很大
優點:版本迭代、回歸測試可以節約人力成本,提高測試效率。缺點:維護成本非常高,往往前端UI界面元素髮生變動,程序就需要修改。基本上沒有什麼公司做UI自動化測試的,也是有的,但是很少
5、安全測試
安全測試:對程序安全情況進行測試,難度非常高。
6、測試開發
測試開發:自動化測試和安全測試、性能測試都屬於測試開發,自動化測試代碼能力要求很低,自動化測試代碼量少。
測試開發主要的工具還是開發測試工具的,比如測試平台的開發、監控平台的開發等等,他們的任務主要是開發一些測試工具,提供業務測試人員的使用,提高測試的效率和測試的質量
綜上測試分類屬於進階關係:功能測試->接口測試->自動化測試->測試開發
三、測試人員的工作環境
一個團隊裏面主要有:產品、UI設計、研發、測試(需求方、運維)
(需求方):大公司的需求都是業務方(運營)提出來的,然後產品進行收集
產品:產品的設計者,研發測試在生產產品的過程中,如何去做,還是看產品如何設計
UI:產品研發過程中,如果涉及到頁面要求梅美化度高的情況,通常需要UI進行設計,比如淘寶的一些頁面。對產品的界面體驗不高的情況,一般就是產品自己畫圖
研發:產品的開發者、生產者
測試:產品質量的保證者
(運維):產品需要數據庫、服務器的支持,他們主要負責這些
一個中等的項目有:1-2個產品、1個UI(可有可無)、6-10個開發、3-4個測試,測試人員的多少,要看公司對產品質量的重視,還要看公司的規模大小