比如,十年前與現在相比,測試人員的核心競爭力已經發生了明顯的變化。
隨著敏捷、類敏捷、Devops等模式的引入,系統架構由單體架構到SOA再到微服務等架構的發展,以及數據治理、人工智能的應用,軟件交付周期逐漸縮短,技術復雜度不斷提升,對測試人員提出了越來越高的要求。
軟件測試行業的發展現狀
我們可以先了解一下測試行業的發展趨勢以及隨著相關行業的發展,對測試人員提出了哪些要求,我想若我們達到了未來發展的要求,那么這就是具備
之前寫過《2018年度軟件測試行業現狀報告》的解讀,其中有總結以下幾點:
- 測試人員對
需求分析的投入在逐漸增大,同時測試人員逐漸開始注重客戶問題的分析,更關注 用戶體驗和用戶反饋。 - 敏捷和類敏捷型項目已經占到了已經極高的百分比,而DevOps模式的使用已經持續數年穩定增長,DevOps正在成為軟件交付的最佳模式,同時我們發現瀑布或類瀑布開發模式比重逐漸降低。
- 較去年,
自動化測試技術比例基本保持穩定且處在一個高占比的狀態。不了解、不使用自動化的越來越少。同時令人興奮的是,發現越來越多的測試人員將自動化技術應用于日志和數據分析、綜合監測。
敏捷及DevOps模式的應用,對測試人員提出了不同于以往的要求(以前測試基本上都在開發階段之后和產品上線之前完成),使得測試人員在開發階段之前加大了對需求分析等測試分析和設計(測試左移)、同時不斷提高自動化測試技術的投入和應用、促使測試技術多樣化(如,日志和數據分析,產品質量運營)發展(測試右移)。
同時,敏捷一直強調“團隊為質量負責”,測試不再是測試人員的專屬,這里我們需要重新思考下,質量由整個團隊負責,那么測試的價值如何更好的體現——如何提高測試效率。
DevOps模式更是對測試、尤其是自動化測試、編碼能力提出了更高的要求。
在這樣的行業發展背景和趨勢之下,我們不難得出
若我們現在具備如上所說的
這里需要注意的是具備了一定的開發基礎并不等同于能夠做好測試,之所有測試開發成為一種趨勢,是因為在具備優秀測試設計等測試能力的基礎上,若具備一定開發能力和思維的測試人員,能夠更好的從質量、效率、風險、成本之間尋求一種平衡。
什么是核心競爭力
什么是核心競爭力,我個人認為核心競爭力一定程度可以理解為
相對于測試而言,核心競爭力可以是
比如性能測試,曾在一次互聯網測試開發大會上,看見過某位前輩講到過的一個案例:在定位某個性能問題時,挖掘到操作系統內核的深度,并且發現是因操作系統內核缺陷導致的性能風險,這個定位問題的過程及結果就是測試專業性深度的體現。
也可以是
比如產品迭代初期,一方面產品初步成形,需求變更頻繁、功能穩定性差,同時受到客戶和市場壓力,往往迭代時間緊張,此時對于測試要解決的就是質量與效率平衡問題,自然而然想到自動化測試,然而這個時候自動化是不是合適的呢,顯然自動化初期投入到項目的確能起到效率提升的目的,但隨著迭代發展,會出現什么情況?需求變更引入的自動化維護成本,如果此時業務測試不具備測試開發能力,那么這個維護成本將變的更高,本來就項目時間緊張,自動化維護工作自然而然就變的力不從心,由此,一兩個版本迭代之后,自動化測試就慢慢淡出了視野之外。
一般來講,需求度量一般要從最原始的需求開始,比如迭代初期項目時間緊,考慮到版本穩定性,通常不會選擇自動化測試(除非自動化的開展或重構成本非常的低),而是從需求優先級、質量目標、測試覆蓋等角度,對測試廣度、測試深度進行測試策略設計,優先保障核心功能質量。這也是很多公司對測試開發的要求是首先要懂測試、然后懂開發的原因,能夠對業務測試遇到的問題提出適合的技術解決方案,避免盲目開展自動化、工具開發,導致“藥不對癥”。
雖然我認為核心競爭力一定程度可以理解為不可替代性,但并
同時,建議了解一下現有比較主流的開發、測試思想、模式,如DevOps開發模式、測試左移與右移思想等等;測試應用領域,如人工智能測試;測試技術,如數據、接口的自動化等等,使得我們對測試的認識具有一定的