
隨著互聯網行業的高速發展,快速高質量的產品版本迭代成為企業始終立于不敗之地的迫切需求,而在短期迭代的快節奏中,傳統測驗作業面對更大壓力,無法持續提供高效率高質量的人力支撐,所以越來越多的企業需要技術更為全面的測驗開發工程師,
測驗開發本質上屬于測驗,區別在于需要依靠更多的技術手段作為輔助,在提高測驗作業效率的同時保證產品質量,與測驗相比,測驗開發會將測驗任務提前,不用非等到開發全部結束之后再測驗,極大提高了測驗速度和質量,另外測驗開發還需要完成將測驗自動化的任務,通過開發維護測驗工具、搭建自動化測驗平臺等手段,提高測驗效率,減少人力成本,
筆者將結合自己的求職經驗,從下面幾個方面介紹測驗開發崗位,希望對大家面試測驗開發崗有所幫助,

測驗開發崗招聘分析
測驗分為:客戶端測驗,服務器端測驗,安全測驗,性能測驗,功能測驗,自動化測驗,測驗開發等,
1.1 不同測驗崗作業內容
客戶端測驗 是指對用戶可以看到的內容進行測驗,比如包含界面的網頁端、pc 端、移動端等,一般是在用戶的機器上去做,
測驗內容包括:安裝測驗、卸載測驗、用戶界面測驗、功能測驗、字符輸入測驗、提示資訊測驗、超鏈接測驗、操作按鈕測驗、選單測驗、視頻音頻測驗、程式運行權限測驗等,
服務端測驗 有兩種:一種是直接對 WEB 或者 APP 的服務端進行測驗;另一種是對更后端的資料庫、快取系統、中間件、檔案系統等進行測驗,
測驗內容包括:代碼檢查、介面測驗、結合業務的模塊測驗和場景測驗、壓力測驗、服務端最優配置測驗等,
安全測驗 是指有關驗證應用程式的安全等級和識別潛在安全性缺陷的程序,主要查找軟體自身程式設計中的安全隱患,
測驗內容包括:緩沖區溢位、SQL 注入、跨站腳本攻擊、跨站請求偽造、SSL 協議攻擊等,
性能測驗 是為了保證產品發布后其性能能夠滿足用戶的需求,對指定的軟體產品進行功能性的檢測和驗證,確保這些功能都得以實作并能正常運行,
測驗內容包括:基準測驗、日常壓力測驗、峰值壓力測驗、容量測驗、穩定性測驗等,
功能測驗 主要采用黑盒測驗方法,結合測驗內容對功能進行測驗,同時在測驗程序中對用戶需求、設計檔案和使用手冊進行檢查,
測驗方法主要根據測驗物件的不同靈活進行選擇,功能測驗是對應聘人員要求最低的一種,一般只需點點點找出產品的 bug,不需要很高的技術含量,這同時也導致測驗人員的可替代性很高,發展空間已經接近天花板,所以需要掌握其他方向的測驗內容,
自動化測驗 是借助于測驗工具、測驗規范,從而區域或全部代替人工進行測驗及提高測驗效率的程序,它的主要進步之處在于自動測驗工具的引入,包括對各種測驗內容的管理和實施、測驗腳本的開發與執行等,對于編程能力的要求更高一些,
下表中是各大廠對測驗開發作業內容的說明,可以看出,測驗開發 應該具備自動化測驗技術,但不局限于此,也應該具備平臺和工具的開發能力,整體要求較高,作業內容主要包括:
一是測驗工具、測驗平臺的開發,服務于測驗相關的業務,與開發公司其他產品業務很類似;
二是自動化測驗開發,主要開發自動化測驗腳本,比如 UI 自動化測驗、介面自動化測驗、單元測驗等等;
三是一般性測驗腳本的開發,避免單一冗余的作業,提高效率,比如生成測驗資料、抓取頁面資料進行對比等等,
1.2 市場需求及薪資待遇
某招聘官網上搜索測驗開發的市場需求量,僅僅北京就有 1.8w 以上,性能測驗和自動化測驗次之,為6k左右;根據某招聘網站的統計,北京測驗開發的平均月薪達到18k以上,遠遠高于其他測驗崗位,且有一半以上年薪大于 20w,

不僅需求量大,薪資高,而且很多名企也爭相招聘,
1.3 招聘要求
各廠對校招測驗開發崗位的招聘要求比較一致,筆者將用騰訊、阿里和網易的招聘要求來舉例說明,并總結出通用要求,

(1) 學歷和經驗要求

測驗開發崗對學歷的要求一般在本科及以上,與其他技術職位相比,入行門檻并不高,
(2) 一至兩種編程語言
測驗開發崗對編程能力要求較高,市場上很多測開工程師都具備優秀的開發能力,代碼基礎特別扎實,甚至有些做過一兩年開發,所以建議熟練掌握一到兩種編程語言,
剛入門的小伙伴也許會覺得掌握幾種編程語言很難,但只要培養起自己的編程思維,再學會其他語言就水到渠成,因為編程語言都是用來表達編程思維的工具,就像寫作之前列提綱打草稿一樣,編程思維順暢之后,對編程語言的掌味訓在不斷地練習中越來越好,
(3) 計算機基礎知識
測驗崗的筆試面試中會出現對資料結構與演算法、資料庫、計算機網路、作業系統等基礎知識的考察,想要在作業中快速上手,并且有更好的職業發展的話,必須牢牢掌握這些基礎知識,如果能在面試中和面試官對答如流,將極大增強面試通過的概率,
(4) 軟體測驗理論與方法
軟體測驗理論與方法是所有測驗崗的必備,主要包括:軟體生命周期,測驗用例撰寫方法,軟體測驗原則;軟體測驗管理相關技術,軟體各個階段評審,軟體測驗計劃撰寫,軟體測驗程序管理,軟體驗收,軟體測驗整個程序一些檔案規范等,這部分內容與上文提到的計算機基礎知識相比難度小很多,學習起來也會很快,
測驗開發崗求職準備
2.1 技能學習路線
(1) 編程語言學習
目前熱度很高的編程語言有 Java,C/C++,PHP,Python,Go 等,雖然看起來眼花繚亂無從下手,但是要記住編程語言只是一種工具,不管什么語言只要能熟練掌握,快速高效地解決問題就可以了,
(2) 計算機基礎知識
資料結構與演算法
書籍推薦
適合入門:《大話資料結構》《演算法圖解》;
演算法進階:《演算法》(第四版)、《演算法導論》,理論性更強,
刷演算法題
除了理論的學習,更重要的是一定要多在力扣刷題,太久不刷題的話會手生,非常影響筆試面試的發揮,
力扣題庫 頁目前已全新改版,題型、知識點、分類標簽都進行了優化調整;
企業真題題庫 幫助大家全面掌握技術面試考點;
刷題新手建議從「劍指Offer」模塊起步,題目比較基礎,面試中出現頻率也很高,時間充裕的話建議刷兩到三遍,
資料庫
資料庫的學習筆者推薦《MySQL 必知必會》《深入淺出 MySQL》兩本書,常用的增刪改查操作、索引、索引背后實作原理、查詢如何加速、事務隔離級別、內連接外連接等等,都是常見的面試題,
力扣上也有 資料庫 模塊的題,題目難度和真實筆試面試中寫 SQL 的難度相一致,筆者當時刷了一半,求職程序中拿下了所有的資料庫題目,強烈推薦!
計算機網路
推薦謝希仁的《計算機網路》,是很多大學推薦的教材
《計算機網路:自頂向下》,很適合入門級使用
視頻可以看韓立剛老師的講解,通俗易懂,好評很多,
作業系統
偏向于概念和理論講解推薦:《現代作業系統》、《作業系統概念》;
具體實作推薦:《30 天自制作業系統》,幫助更好地理解理論知識,
(3) 軟體測驗理論
經典入門書籍推薦:《計算機軟體測驗》,全面系統地介紹了軟體測驗理論及相關技術,
《軟體測驗的藝術》:涵蓋了很多軟體測驗的領域,列舉很多模型、方法和工具,實用性很強,
(4) 測驗專案或實習
了解測驗崗的作業內容最有效的辦法就是直接去公司實習,但如果沒有時間實習的話,小伙伴們可以找一些測驗專案練習:
比如結合 Selenium 學習 Web 自動化測驗,通過腳本撰寫,有助于提高語言基礎知識的理解和運用,并進行大量練習,如果用 Selenium 自動化腳本開發,起碼要完成 100 個自動化測驗用例,對 seleinum 達到熟練使用的地步,才能快速寫出自動化測驗用例,接下來可以結合 Java 中 Junit 或者 testNG, Python 中 unittest,繼續深入研究 Selenium 和一些自動化測驗框架的知識,
然后還可以設計自己的測驗框架,比如 Python+Selenium 設計自動化測驗框架,網上的這類開源專案資源很多,重點是一定要把專案的細節全部搞清楚,盡量往深鉆研,理清楚自己的想法,
2.2 時間規劃建議
(1) 編程語言學習、資料結構和演算法:2 個月理論學習 + 經常刷題
這部分內容要具有連貫性的學習,編程語言基礎學差不多了要學習資料結構和演算法的理論知識,并且理論一定要結合刷題來鞏固,才能更快上手、熟能生巧,刷題的話剛入門可能比較慢,就算一天一兩道題也沒關系,一定要堅持下來,慢慢就能看到成果,想去大廠的話就使勁刷,一般三四百道起步,
(2) 資料庫、資料庫刷題:15 天理論學習 + 經常刷題
資料庫知識相比難度不高,入門書籍很快就可以看完,同樣需要經常刷題,鞏固知識點提高速度,
(3) 計算機網路、作業系統、軟體測驗理論:2 個月
這部分可能比較枯燥,可以在看書時結合課后題或者筆試題面試題來隨時檢驗復習,力扣網站上也有很多相關 LeetBook,可以搭配學習~
(4) 專案或實習:3 個月
做專案可以不用強求難度,但一定要確保自己學懂了每個細節,專案中遇到了什么問題,該怎樣解決,效果怎么樣,有沒有其他方案,不同方案的區別在哪,這些常見的專案問題要在面試前提前準備好,
相比埋頭思考苦學,你更需要的是有經驗的大佬或同行給你提意見,給大家推薦一個學習交流地,644956177,里面大神會耐心幫助你解決問題,很多問題能夠在線解答,另外群里面也有很多書籍資料和基礎的視頻,都已經打包好了,趕快加入吧,
2.3 常見面試題舉例
問:界面搜索框測驗用例
答:可以從功能測驗、界面測驗、安全性測驗、兼容性測驗、性能測驗、易用性測驗等角度進行回答,如:
(1)功能測驗
1.搜索內容為空如何處理
2.在允許的字串長度內外如何處理
3.合法的字串長度后,加空格驗證結果
4.驗證每種合法的輸入,結果是否正確
5.是否支持檢索內容的復制、粘貼、編輯等操作
6.是否支持回車鍵搜索
7.多次輸入相同的內容,查看系統的檢索結果是否一致
8.搜索的歷史紀錄是否顯示在下面
9.點擊搜索,顯示搜索界面
(2)界面測驗
1.查看 UI 是否顯示正確,布局是否合理
2.是否有錯別字
3.搜索結果顯示的布局是否美觀
(3)安全性測驗
1.腳本的禁用
2.SQL 的注入,檢索 SQL SELECT 陳述句等
3.敏感內容的檢索是禁止的
(4)兼容性測驗
1.多平臺 Windows,mac
2.移動平臺 android,ios
3.多瀏覽器火狐、chrome、IE 等
- 解析度,作業系統版本兼容等等
(5)性能測驗
1.搜索頁面的鏈接打開速度的時間
2.搜索出結果消耗時間
3.弱網時搜索的回應時間
4.不同網速下搜索時的回應時間 3g,4g,WIFI
(6)易用性
1.有聯想功能
2.搜索內容與搜索結果的匹配程度
3.支持拍照搜索,語音搜索
另外還有其他場景,比如發紅包測驗用例、用戶登錄測驗用例、輸入法測驗用例、支付功能測驗用例等等,都可以按照以上角度來回答,回答的時候要注意邏輯,越細致越好,

測驗開發崗發展前景
測驗開發的發展方向可以分為以下幾個大方向:
一是技術專家的道路,這條路比較坎坷,但也比較踏實,如果不太善于人際關系交往,不擅長管理,或者對技術有濃厚興趣,建議在技術道路上多做耕耘,測驗開發這條路根據從業者學識、經驗的積累,會一路從初級上升到中級,再到高級,再到測驗開發專家,
二是管理方向,這條路并不會比技術方向輕松,因為要做好各方面的協調、統籌和管理作業,同時還要提升自己的技術,來鍛煉自己落地一些團隊方案的能力,也更能服眾,雖然說管理的「生命周期」比純技識訓長一些,但是一定不能放棄技術,
三是轉崗到其他方向,比如研發、運維、產品經理等,這些都屬于新出路,建議不要因為頭腦發熱選擇轉崗,因為面臨新行業新環境依然需要從頭學起,沒有恒心和耐心很容易受挫,并且容易浪費時間,如果自身有了一些積淀,比如主流的技術堆疊或者業務知識很熟練,那么嘗試新事物也未嘗不可,
本文對測驗開發崗位的招聘分析、求職準備、發展前景做了系統介紹,希望對想要求職測驗開發崗位的同學有所幫助,
最后我也整理了一些軟體測驗學習資料,對于學軟體測驗的小伙伴來說應該會很有幫助,為了更好地整理每個模塊,我也參考了很多網上的優質博文和專案,力求不漏掉每一個知識點,很多朋友靠著這些內容進行復習,拿到了BATJ等大廠的offer,這份資料也已經幫助了很多的軟體測驗的學習者,希望也能幫助到你,需要的進群 644956177 自取喔,軟體測驗,與你同行!陪你成為優秀的測驗工程師!
既然都看到這里啦,請你幫個忙:
1、點贊,讓更多小伙伴看到;
2、關注我,持續更新測驗干貨,
敲字不易,如果此文章對你有幫助的話,點個贊收個藏,給作者一個鼓勵,也方便你下次能夠快速查找,
干貨分享
自動化測驗6年后,終于有了屬于我自己的團隊···
如果你35歲恐慌了,那你真的該反思自己了···
活久見!40W年薪低?35歲測驗工程師慘遭女孩嫌棄!估計是被雞湯洗腦了!
迷茫了3年:做完這個測驗專案,我終于決定辭職···

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/296503.html
標籤:其他
上一篇:環境影響著一個人...最高月薪20K,想成為最優秀的人,就要向最優秀的人學習
下一篇:九款程式員必備工具,老少皆宜
