1. 程式人生 > >閒扯測試工程師之發展(覺得不錯,拿來與大家分享)

閒扯測試工程師之發展(覺得不錯,拿來與大家分享)

一,測試工程師的歷史

我算是接觸網際網路測試工作比較早的一批人了,在2010年研二實習的時候就開始在一家加拿大的企業做測試開發工程師了。2012年畢業的時候,貌似網際網路行業開始有專職的測試人員,而且不少中小型公司還沒有專職的測試人員,程式的質量由開發人員保證,產品進行簡單的驗收。就算是公司有專職的測試人員,地位還是比較低的,貌似各種人都能來指揮測試人員的。產品來壓測試時間,開發也來壓測試時間,總感覺到測試人員什麼都不會,而且沒有什麼好測試的。可是一旦出了問題,都會怪測試工程師沒有測試到。隨著使用者對產品的質量要求越來越高,公司也就注重測試工作了,各個公司開始組建自己的測試團隊,對測試人員要求也開始變得越來越高。測試人員在不少公司的地位有所提高,能把控專案進度,提出不同的意見。慢慢的就和國外的企業接軌了,我實習的時候加拿大的公司的測試地位非常高,測試說測試通不過,誰也不能上線了。

二,測試工程師的來源

由於測試一般是根據產品的需求,從使用者角度來驗證開發做出來的程式或是產品是否符合需求,要求門檻比較低。也由於要借鑑不同行業的人來驗證產品,所以功能測試人員來自己各行各業,也沒有高學歷的要求。一般應屆畢業生是新加入測試行業的主力軍,他們年輕有活力,還是比較合適的。後來大家看到網際網路的測試工資待遇還是不錯的,而且門檻比較低,所以很多考慮著轉行來做測試;或是其他工種,如泥瓦工,廚師,銷售等等都通過上幾個月的培訓班,來加入到測試工程師這個行業。此處不是說其他的工種不能做測試工程師,只是在說明各個行業目前都有轉測試的趨勢,競爭壓力還是挺大的。

三,測試工程師的分類

網上或是書上我們會看到很多類似於黑盒測試,白盒測試,灰盒測試等等吧,實際上這些兒只是書面上的分類,真正的公司中完全不是這麼回事?

在網際網路公司中,測試工程師的分類如下:

(1)功能測試工程師

(2)效能測試工程師

(3)安全測試工程師
(4)自動化測試工程師

(5)測試開發工程師

(6)高階測試開發工程師

(7)測試專家

當然,如果按層次來分的話,應該是如下:

第一層:(1)功能測試,按需求檢測開發的產品是否符合需求。

第二層:(2)(3)(4),這層的測試人員需要熟悉使用一些兒工具,開源的框架,藉助於簡單的指令碼來完成對被測物件做效能,安全和迴歸測試工作。

第三層:(5)(6),這層測試工程師需要通過編碼,或是對開源的框架,工具進行二次開發,開發測試工具,測試平臺等來解決前兩層測試人員工作中遇到的問題,提高工作效率。

第四層:(7)測試專家,就是能夠發現測試領域問題並解決某個領域的問題的人,同時還需要具有這個領域的系統化的知識體系。這個比較難達到這個級別,需要的掌握的東西還是比較多的。

行情分析:

(一)目前第一層測試人員最多,從12年加入到測試行業,到現在為止已經具有相當一部分人了。而且先前加入的人員,已經工作了三四年了,已經達到了瓶頸,業務比較熟悉,技術上沒有提升。同時,不斷有應屆生或是年輕的小夥伴加入,對老人衝擊很大,而想換工作的時候,又沒有優勢,非常麻煩。

(二)第二層的測試人員,貌似很高大上,藉助於一些兒常用的工具,開源的框架,來錄製指令碼,編寫自動化測試用例,然後接於到jenkins中實現持續化整合。好牛的感覺喲,其實不是這麼回事,不管我們是使用工具還是開源框架,我們都是在使用工具的。一旦工具出了問題,或是消失了,收費了等不可控制的原因吧,我們就失去了優勢。而且入手還算比較快的,通常牛人帶你,或是參加一個專項的培訓班,一兩週就能入手。此類人正在慢慢地變多,而且也漸漸地失去了優勢。

(三)第三層人現在的需求量比較大,但是相應的人員比較少。因為這類人需要有一定的編碼能力,而普通的測試人員具有編碼能力的不太多,計算機專業的人員有了編碼能力就去做開發了。結果留下了這個真空地帶,這個地帶的人待遇相當不錯,人員少,建議大家往這個方向發展。

(四)第四層人就比較鳳毛麟角了,也是我們所有的測試人員努力的方面,我們就不過多介紹了。

四,目前的測試技術介紹

目前自動化測試比較熱,我們就先介紹自動化測試,然後再去簡單地介紹一下其他的測試。

自動化測試:

(1)WEB UI自動化測試:主流的開源框架是Webdriver2.0,先前還是selenium 1.0,Htmlunit,經過社會上的實踐,現在就只剩下Webdriver2.0。而且這個開源的框架支援主流的語言,如python,java,php等,藉助於Selenium IDE,Firebug等工具,完成對Web UI的自動化測試。

(2)API或是服務的自動化測試:介面自動化測試主流技術是python的urllib2和requests模組,phpunit也可以用來做介面自動化測試,java在支援介面自動化測試方法有點兒弱,需要做一下二次封裝。由於服務出於安全考慮,各大公司都會自己開發相應的服務框架,所以服務的自動化測試則是公司自己開發的框架比較多。如58趕集的SCF服務框架下開發的服務,則需要ATF框架來進行測試,所以就不能列舉出服務的自動化測試技術了。

(3)移動自動化測試:移動自動化測試指的是APP UI自動化測試,後端已經由上面的介面和服務自動化來保證了。而APP UI自動化測試主流的框架是Robotium和Appium,因為Robotium只支援java語言,並且只能對Android系統進行測試,所以沒有Appium應用的廣。Appium支援IOS和Android系統,支援java和python語言,是主流的框架。

效能測試:

效能測試我不太瞭解,不過目前主流的工具是LoadRunner和Jmeter。利用這些兒工具來根據需求,錄製指令碼,進行壓力測試。還有需要對Jmeter進行二次開發,以完成對自己業務的完美支援。

以後對移動端的效能要求也比較高了,新出的App需要支援各種型號的機器。高階的機器需要支援,低端的機器也同樣需要支援。以後移動端的效能,應該算是效能測試的新方向。

測試開發:

測試開發是介於測試和開發之間的工種,測試開發是針對測試的開發,也就是說測試人員是測試開發的產品,他們有任何工作中的需求。測試開發人員需要積極響應,通過開發相應的工具,平臺來解決他們遇到的問題。

當然測試開發要求也比較高,上述的開源框架都需要深入瞭解,java,python,shell,ruby等語言的使用已經不是問題,CSS,jS,HTML等前端的東西也要熟練使用,介面,服務的開發也是常事。在此階段各種技術應該就不是問題了,你需要的就是解決問題的能力。

好了,就閒扯到這些兒吧,這是我在工作中得到的一些兒經驗吧!現在功能測試已經飽和,自動化測試人員日漸增多,測試開發需求量變大。一個好的測試人員,要有明確的發展方向,有計劃地發展自己,不能跟著需要求走,走高消耗的路線!

相關推薦

閒扯測試工程師發展覺得不錯大家分享

一,測試工程師的歷史 我算是接觸網際網路測試工作比較早的一批人了,在2010年研二實習的時候就開始在一家加拿大的企業做測試開發工程師了。2012年畢業的時候,貌似網際網路行業開始有專職的測試人員,而且不少中小型公司還沒有專職的測試人員,程式的質量由開發人員保證,產品進行簡單

java程式猿應該瞭解的10個面向物件設計原則每次看都很有感悟特意大家共享

Java程式設計最基本的原則就是要追求高內聚和低耦合的解決方案和程式碼模組設計。檢視Apache和Sun的開放原始碼能幫助你發現其他Java設計原則在這些程式碼中的實際運用。 面向物件設計原則是OOPS(Object-Oriented Programming System,

Mininet(輕量級軟件定義網絡和測試平臺) ARP攻擊防範

mininet ARP ettercap Mininet-5 延續上一個實驗(mininet-4),本次實驗要模擬arp 攻擊 以及 如何防治arp攻擊 角色 h1 為使用者,不停的去跟h2溝通 h4 為攻擊者,企圖去竊聽h1與h2溝通的資訊 所需安裝套件 sudo

測試工具Jmeter使用badboy錄制腳本

如果 group 發現 jmeter bat 選擇 pac 多功能 添加 前面使用badboy工具時說過,badboy是可以錄制Jmeter的測試腳本,這樣省去了自己設計測試用例的麻煩 Jmeter主要是一個性能測試工具,不光在web和http,現在擴展很多功能都可以在

測試工具Jmeter創建一個簡單測試用例

管理器 view time http ati 測試用例 停止 調度器 until 前面介紹了如何使用badboy錄制jmeter腳本,以及如何導入腳本並進行測試 這裏介紹下手動創建測試用例,主要步驟如下: 1、創建線程組 第一次打開Jmeter只有一個測試計劃,右鍵

測試工程師如何面試篇

前言 馬上又要到了求職招聘旺季了,那麼隨之而來面試也成了一大"熱門"相信很多人都有這種感覺,平時自己工作的時候很6,獨當一面,但是去面試就感覺很懵逼,甚至不會很好的展示自己 一、面試的流程 1、先給Hr簡歷、2、填表 3、做筆試題、4、面試官問問題(也稱口頭面試)5、二面(比如技術經理)6、HR再和你聊

軟體測試工程師筆試題

軟體測試筆試題(答案) 判斷題1.軟體測試的目的是儘可能多的找出軟體的缺陷。(Y) 2.Beta 測試是驗收測試的一種。(Y) 3.驗收測試是由終端使用者來實施的。(N) 4.專案立項前測試人員不需要提交任何工件。(Y) 5.單元測試能發現約80%

軟體測試工程師必備html知識框架的設計HTML表單設計

什麼是表單: 表單是一個包含表單元素的區域。 表單元素是允許使用者在表單中(比如:文字域、下拉列表、單選框、複選框等等)輸入資訊的元素。 表單使用表單標籤(<form>)定義。 <form> <input /></form> 

軟體測試工程師必備html知識框架的設計

框架和表單設計: 什麼是框架:將瀏覽器劃分為不同的部位,每一部分載入不同的網頁,實現同一個瀏覽器視窗載入多個頁面的效果 注意:寫的位置在body的上面部位,如果寫在body裡面,是不能執行的,放在body外面都可以執行 同時,frame標記必須要放在frame

Python黑帽子 黑客滲透測試程式設計取代netcat

netcat是個計算機網路公用程式,用來對網路連線TCP或者UDP進行讀寫。 透過埠3333(-l 監聽狀態listen)從機器foo複製到機器bar複製檔案: [email protected]$ nc -l -p 3333 > backup.

Python黑帽子 黑客滲透測試程式設計建立一個TCP代理

TCP代理不僅可以將流量從一個主機轉發給另一個主機,而且可以評估基於網路的軟體。在企業級環境下進行滲透測試時,你會經常遇到無法使用Wireshark的情況,無法再Windows系統上載入驅動嗅探本地流量,分段的網路也阻止你使用工具直接嗅探目標主機。作者經常在實際

Python黑帽子 黑客滲透測試程式設計通過Paramiko 使用SSH

使用我們編寫的bhnet工具介紹和傳送資料非常方便,但有時候需要通過加密流量來避免,這是更明智的選擇。最常用的辦法就是使用secure shell(SSH)傳送流量。 paramiko是用python語言寫的一個模組,遵循SSH2協議,支援以加密和認證的方式,進

軟體測試工程師發展方向【轉】

從測試工程師的職業發展來看這個問題。一般來講,測試工程師的發展方向無外乎以下幾個方面,而每個方向的要求是不一樣的,談論測試人員的技術要求,我們也需要根據個人的職業規劃和公司的發展來看這個問題。 級測試工程師   剛入門擁有電腦科學學位的個人或具有一些手工測試經驗的個人。開

測試工程師bug的定位

身為測試工程師,總有一道繞不過去的坎就是定位bug,這其實是非常花費時間的。 也許有很多人不以為然,覺得無非就是發現bug後提交bug管理系統,描述操作步驟,預期結果和實際結果哪裡不一致,然後繼續測試。並不是說這樣做的不對,只是說這樣做的不夠好,看似節約了測試時間,實

卅川的狀態機創作中不定時上傳

rom 不同的 大學 核心 追溯 選擇 有限狀態機 span 任務 川的第一篇幹貨,將從講述FSM(有限狀態機)開始。 川第一次接觸狀態機這種東西,還得追溯到剛到暢遊工作,破解了別的遊戲的代碼(遊戲程序就是這麽沒節操和底線,嗯!)才知道有這麽個東西的。雖然大學學習過相

手機供應鏈上的千億帝國國產手機崛起終端品牌對產業鏈的培養意義重大

sha 按鍵 這也 行業 蘋果公司 處理器 收益 年會 國產化 作者寧南山, 轉載於寧南山(ID: ningnanshan2017)一部智能手機裏面,最貴的單個部件就是屏幕,在屏幕領域,中國以京東方為首已經開始崛起,2016年京東方的營收首次超過日本目前唯一的顯示面板廠家J

MVC單元測試實踐健身網站(六)-計劃的添加重置

兼容 跳轉 需要 以及 str 額外 休息 保存 bsp 健身計劃需要使用者自己定制,沒有現成的內容可供選擇。本篇就是關於健身計劃的添加與重置功能的一部分。 一 功能描述 a) 關於計劃的定制,決定以周期的方式,比如有人會以一周為周期,然後安排每周的1、3、5進行鍛煉。系統

seleniumStaleElementReferenceException: Message: Element not found in the cache...

ktr ast ebe not selenium 自動 print esp 找不到 今天給大家分享一個selenium中經常會有人遇到的坑: selenium.common.exceptions.StaleElementReferenceException: Messag

mybatis-高級結果映射一對一多種方式 有沒提到的你找我

int shc 變量名 als where html method reflect jdbc mybatis的高級結果映射可以很輕松的幫助我們處理一對一, 一對多的數據關系。 1 數據準備 1.1 數據庫 創建以下的名為 mybatis 的數據庫, 並在其下創建4個表。

PS圖層混合演算法濾色 疊加 柔光 強光

濾色模式: 作用結果和正片疊底剛好相反,它是將兩個顏色的互補色的畫素值相乘,然後除以255得到的最終色的畫素值。通常執行濾色模式後的顏色都較淺。任何顏色和黑色執行濾色,原色不受影響;任何顏色和白色執行濾色得到的是白色;而與其他顏色執行濾色會產生漂白的效果。  Screen 濾色 C=1-(1-