軟件測試人員的具體工作内容? 當下軟件測試崗位越來越火,然後很多人對軟件測試崗位,和技能都很迷糊,下面淺談一下當下軟件測試崗位和需掌握的技能,我來為大家科普一下關于軟件測試人員的具體工作内容?以下内容希望對你有幫助!
當下軟件測試崗位越來越火,然後很多人對軟件測試崗位,和技能都很迷糊,下面淺談一下當下軟件測試崗位和需掌握的技能。
一、什麼是軟件測試
很多小夥伴隻知道軟件測試這個崗位,不明白它到底是什麼,軟件測試到底是做什麼呢?
測試(test)最早是出自古拉丁字,它有罐或者容器的含義。在一般的工業生産中,被當做一個常規的檢查去做的。而軟件測試的經典定義是:在規定條件下,對程序進行操作,以發現錯誤,對軟件質量進行評估。
總結:軟件測試的初衷就是為了發現軟件自身存在的缺陷(BUG),而設定的一個崗位,不管從事軟件測試任何一個崗位,初衷都應該以發現BUG為初衷的去測試。
二、國内現狀
中國軟件測試研究起步在‘六五’期間,一直到1990年國家蔡成立的中國軟件評測中心。(國外1957年就對軟件測試和軟件調試區别開)國内由于起步較晚,與國際先進水平相比差距較大,而國際主流谷歌網站,訪問時網(qiang)絡(le)不好,導緻大部分小夥伴無法與先進技術“面對面”交流。所以在國内,入行軟件測試崗位,相對于開發而言要‘簡單些’,想在軟件行業有所‘成就’,相比較開發而言要相對‘困難’些。
三、各個崗位的職責和基本技能
初級測試工程師:
崗位技能:測試基本理論,如:了解計算機原理,測試基本方法(邊界值、等價類、正交、錯誤推斷、因果圖…),前端基礎,了解基本開發和測試模型(V、W、H…),編寫測試用例,編寫測試報告,會主流的BUG管理工具,和項目管理工具。如:jira、Testlink、禅道等。
崗位職責:測試用例編寫執行(測試行業中的‘點點點’技能),軟件缺陷管理(BUG)。測試報告輸出,以及階段自己負責模塊的測試總結。
中級測試工程師:
崗位技能:會初級所有技能,熟悉整個軟件開發、測試流程,會不同操作系統(windows、linux),會使用接口測試工具(postman、jmeter…)做接口測試工作。關系型數據庫(mysql、oracle…)增删改查,重點是查詢。會抓包(工具fiddler、httpwatch…)分析。
崗位職責:更多的做一些接口測試類的工作,功能與數據庫交互等,不在停留在‘點點點’的工作中。這時候的你,已經是一些中小型類型公司的中流砥柱。
高級測試工程師:
崗位技能:會中級所有技能,會測試環境搭建(一般是運維幹的活,不過高級應該是需要會的技能),會自動化測試(非代碼級),如:用postman做接口自動化測試,用一些錄制軟件錄制腳本,你要明白工具中那些事冗餘、無效的代碼,做一些簡單的增删改!會性能測試(工具:jmeter、loadrunner…),做性能測試。對整個軟件開發流程了如指掌!!軟件質量把控的同時,可以預測軟件風險,對軟件、開發測試提出寶貴建議。
崗位職責:社會主義一塊磚,哪裡需要哪裡搬。功能、接口、性能、自動化、服務器搭建樣樣精通!
測試開發工程師:
這個崗位也是目前分歧最大的一個崗位。我這兒将重點分析一下。其實測試開發工程師還可以分成,自動化測試開發工程師和測試開發工程師。現在很多企業,把是否會寫代碼定義成是否是測試開發,所以導緻了很多小夥伴認為,測試開發工程師就是自動化測試開發工程師。其實我個人認為這樣劃分還是缺點意思的。其實自動化測試開發僅僅是測試開發中一個技能而已。
自動化測試開發工程師,主要是通過代碼代替人去工作。一般這些代碼,是需要專人去維護,而專人最基本的就是要懂相同語言的代碼。如果測試腳本是用python編寫的,維護人員必須要懂Python語言才能夠去維護。為什麼要維護,在後期版本叠代中,産品不可避免的會出現産品需求變更,這時候你的測試腳本就需要重新編寫了。而這項工作,維護成本較高。重點!重點!重點!圈起來要考,僅适用于較成熟、需求變更不頻繁、項目周期長的産品做回歸測試或兼容測試使用!!
說到這兒,很多小夥伴會問,自動化測試腳本開發以及維護成本這麼高,還不如手工點點點呢,為什麼還要寫?減少人工不斷去做重複的操作。
A産品版本叠代周期7天,7天之内加了一個小需求,這時候的可能測試時間隻有2天,這時候你不可能把所有的功能在進行一波回歸測試。從而就可以用到測試腳本了。如果A産品是WEB産品,需要适配IE,火狐,谷歌浏覽器,這時候你不可能去每個浏覽器都去做兼容的,所以用到測試腳本。
重點!重點!重點!自動化測試腳本開發,目的是為了減少人工成本的,千萬不要為了自動化而自動化!!!!
在來說說測試開發:其實測試開發就是開發,隻不過測試開發需要了解測試知識,對開發技術要求不是太高(因為都是内部測試使用的,沒那麼多亂七八糟的需求),他們主要工作職責開發測試工具,服務所有測試人員,目的是減少人工成本。比如上述所說,自動化測試工作不管是開發還是維護,成本都比較高。如果将它把主要的一些功能實現代碼給放在後台,讓一些具體case放在前端可視化去維護,然自動化測試不在那麼的難!
測試開發:
工作技能:中級所有技能,高級大部分技能,至少會一門開發語言,熟悉主流開源的測試框架(如selenium、appium…),熟悉開發(什麼叫開發,自行百度這就不做過多講解了)
工作職責:提高測試效率,較少人工成本,盡可能發現軟件缺陷,去開發以測試為目的的工具或者平台。
測試專家:
能夠成為測試專家,不但要擁有過人的天分,還需要用勤勞的汗水澆灌而來!如果把整個測試行業看成一個金字塔,那麼,他就是金字塔最頂端的男(女)人。走在行業的最前端。他就是崗位的終極目标,同樣也是咱奮鬥的目标。有生之年在此崗位待過,不枉此行!!!
測試主管:
其實測試主管的技能可參照中高級軟件測試工程的技能标準,而此崗位不在是專于技術,更多的是對整個測試流程的把控。跟多關心的應該是:多久?這麼做?哪些人去做?但是能夠成為主管的,對測試技能還是有幾把刷子的!!!
測試經理:
測試經理标準也是可以參考測試主管,一個管理大流程,一個管理小流程,其實目的就是對測試流程把控。當工作人員配備不足情況下,也可以充當測試人員使用。測試經理一般要求較高,不管是對于測試技能,還是測試管理,都要出類拔萃。
測試總監:
此崗位如測試專家平級,唯一區分就是一個偏管理,一個偏技術,同樣都對測試有獨到的見解,同樣也是我輩楷模。
總結:
個人見解,如有見解不同的小夥伴,可以下方留言評論。隻有交流才有成長!!不管哪個行業,用心去做,肯定能夠成功的!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!