-
1 # 明示影
-
2 # 一個存在感小透明
除了BAT,很多大公司都有測試開發工程師的位置,有時候這種團隊會叫EP(Engineering Productivity),在谷歌,其EP團隊人數達到了四位數。
那麼測試開發工程師主要是做什麼的呢。從名字上就能看出,這個位置與測試和開發都有關係。
用一句話來概括,測試開發工程師就是為開發以及測試人員開發工具,從而提高測試人員效率,提高開發人員程式碼效率的人。
具體以APP測試來說,很多測試人員的工作方式是人工去測試或者自己搭建appium環境寫指令碼去測試。但是這樣的方法有4個弊端:
1 人工測試效率低,且難以回溯。如果人為測試的時候,發現了問題,通常需要記錄執行步驟,但是你可以想象,如果人操作手機的時候,點的每個動作都人工記錄的話,那一整天下來,可能也就能測試三四個場景,這個效率可以說相當的低,是絕對不被允許的。
2 人工測試覆蓋率低。這個很容易理解,假設一個頁面有N個控制元件或者activity,人工測試很難設計出全部覆蓋到的測試路徑,因此就會有漏測從而出現bug沒捕捉到的風險。
3 appium環境搭建需要成本,且指令碼重用率低。appium這個傢伙動輒就上G,說句實在話,我是不願意裝的。除了迴歸測試,驗證舊功能不受影響外,新功能上線如果由測試人員自己寫指令碼的話,很多一次性的指令碼寫完測完就會被浪費掉。
4 測試人員需要每人一個手機,而測試工作不是24小時進行的,會導致裝置資源的浪費。每個測試人員在工作的時候,都需要有一臺測試裝置,但是他們下班後,這些裝置就被鎖抽屜裡,這個時間原本可以繼續用來跑測試的,但是就這樣浪費掉了。
基於以上這樣的場景,測試開發人員就可以登場了。
測試開發人員可以研製出一套自動化測試的工具,只需要測試人員把apk或者ipa包上傳,選擇不同的測試方式,就能夠自動化的手動觸發或者定時觸發任務。
這樣做的好處一方面節約了測試人員的人力,解決了上面的弊端1和2,另一方面也不需要他們自己搭建環境寫指令碼(弊端3),最重要的是,他們設計並擁有自己的移動裝置管理叢集,相當於集中了測試人員的測試機,透過自動化的方式,可以讓這些裝置7*24小時的執行任務,最大化的榨取裝置採購的利益(弊端4) 。
上面這個例子裡的服務就是為了測試人員提供,用來提高效率的,因此做這類工作的程式設計師,就被稱為測試開發工程師。
-
3 # 二五八Group
先大概寫個流程:產品經理(規劃專案)——開發工程師(開發產品)——測試工程師(測試)——上線總的來說測試工程師就是一個BUG檢測器。
測試工程熱人員一般要求有1-2年的測試工程師或者程式設計師。
1.編寫測試計劃、規劃詳細的測試方案、編寫測試用例。
2. 根據測試計劃搭建和維護測試環境;
3. 執行測試工作,提交測試報告。包括編寫用於測試的自動測試指令碼,完整地記錄測試結果,編寫完整的測試報告等相關的技術文件;
5.提出對產品的進一步改進的建議,並評估改進方案是否合理;對測試結果進行總結與統計分析,對測試進行跟蹤,並提出反饋意見。
6.為業務部門提供相應技術支援,確保軟體質量指標。
客戶端(服務端)測試工程師:當我們開始研發規劃某個專案完成之後交給測試工程師,舉個例子現如今的抖音、微視等等小影片類的客戶端,測試工程師要做的就是檢測影片在播放途中是否順利、有無其他阻力,在上傳影片的時候是否順利等等一系列客戶端操作中可能出現的問題。
效能測試工程師:影響要求比較高,主要是對服務端介面和伺服器的一個壓力測試,常見的就是誰誰誰公佈戀情、誰誰誰結婚瞭然後微博就炸了,然後伺服器癱瘓。。類似於這種型別
安全效能測試工程師:主要的是防止駭客攻擊或者病毒傳染之類的,工程師可以是模擬駭客進行攻擊。
回覆列表
網際網路公司的測試工程師主要是一個網際網路公司產品的質量保障崗位測試工程師的職責
這裡我先說下網際網路公司一個產品是如何完成上線給使用者使用的,首先由產品經理規劃出一個產品的原型設計文件,之後開發工程師根據產品文件進行開發,開發完成後,將開發出來的產品交付給測試工程師,測試工程師根據產品文件設計測試用例,根據測試用例對開發出來的產品進行測試,測試通過後產品才會上線給使用者使用。
這裡再說一下測試工程師的分類也可以說是發展方向
客戶端測試工程師
主要負責客戶端上的一些功能測試,這裡的客戶端指app和電腦端的軟體,日常工作就是編寫測試用例,然後對app上的功能進行測試,測試方法就是模擬使用者的所有可能行為進行測試校驗,比如說一個影片播放功能,需要看他播放是否正常,會做快進、快退、暫停等等操作。當然最重要的工作就是提bug(產品漏洞),將產品測試中遇到的問題提給開發工程師,督促開發完成修復。
服務端測試工程師
服務端測試工程師的工作同樣也是編寫用例,測試產品,提bug給開發,督促開發修復bug,只不過這裡的產品不同,服務端是指客戶端獲取資料的介面,是不暴露給使用者的。比如說使用者在自己的手機app上釋出了一個影片,這個影片資訊就會存到服務端資料庫中,然後其他使用者使用app時會再透過服務端拉取資料庫裡面的這個影片資料展示出來。相對於客戶端測試來說服務端的技術要求相對會高點。
效能測試工程師
這裡的效能測試工程師一般都指服務端的效能測試,主要是對服務端介面和伺服器的一個壓力測試,我們經常會看到某一個app或者說網站因為使用者量暴增導致炸了無法正常使用,這裡的問題就是服務端效能不夠,因此就需要做效能測試。
安全測試功能師
安全測試功能師這個職位很少有公司會有,你可以把安全測試功能師想成是駭客,就是模擬駭客的攻擊網站的行為,對產品的安全性進行測試。
測試開發工程師
測試開發工程師有些公司可能不歸類有測試工程師,測試開發工程師主要就是為了減少測試工程師手動操作的工作開發一些自動化工具,指令碼或者是平臺,目前測試開發工程師做的比較大的自動化工具就是UI自動化,介面自動化,客戶端壓測。
最後其實還有個web端測試,就是網頁測試可以歸為客戶端測試一類吧,這裡就不細分出來了。