測試開發專題-開篇

陳琦聊測試發表於2021-06-03

測試開發工程師,通常是指具備開發能力的測試人員。


近年來,隨著DevOps和敏捷過程越來越廣泛地被採用,軟體測試、特別是自動化測試得到了迅速的發展。DevOps希望建立一個快速、頻繁、可靠的一體化交付過程;敏捷則要求對交付件質量進行持續、及時、全面的反饋。軟體測試作為研發過程中的重要環節,其能否達到快速響應、有效度量,實現過程自動化、系統一體化的目標,對整個組織的研發效率和產品質量將產生深遠的影響。


這幾年,Scrum和XP(極限程式設計)等敏捷開發過程愈發流行,Shift-Left Testing(測試左移)和TDD(測試驅動開發)得到了越來越多的重視。拋開通常以開發人員為主導的UTDD(單元測試驅動開發)這裡不做贅述,ATDD(驗收測試驅動開發)需要測試人員在需求分析和系統設計方面有著更多的參與和見解,這樣才能夠設計出高可用的用例場景,以驅動需求進一步明確、設計更加周全,從而推進相關干係人做到對需求統一理解,做好同行評審,並保障後續開發工作的順利進行。


隨著企業軟體系統越來越複雜,很多公司選擇了微服務的架構和前後端分離的技術,帶來了更多的自動化、效能、介面和安全性等方面的測試需要。加上DevOps、持續整合和部署相關平臺的應用,容器和虛擬機器雲服務的引入,這些測試有關的平臺、工具和環境的開發、維護,無不需要更多的技能。我們預見,自動化測試作為質量度量活動中的重要一環,未來將具備以下幾個趨勢,這將帶來自動化測試人員從簡單的工具使用者到平臺開發者的一個重大轉變。


過程一體化

  • 使用統一的平臺完成測試設計、指令碼開發和除錯、執行排程、統計分析、報告展示等活動;
  • 同其他DevOps、CI/CD工具實現無縫對接,作為整個研發系統的一個有機組成部分而發揮效用。
資產集中化
  • 將測試指令碼、測試資料,AI測試的語音、說法和圖片等資產進行集中化管理,在組織層面實現共享;
  • 將測試裝置硬體接入雲端,實現集中管理、遠端訪問;採用虛擬化技術構建不同型別、版本的作業系統和瀏覽器,並做到按需啟動和銷燬,在組織層面實現共享。

測試服務化

  • 提供方便的測試管理頁面或介面,含測試人員外的任何人、在任何時候,可方便地發起指定範圍和環境上的一次測試;
  • 測試完成後,及時生成、分發測試結果和分析報告,完成度量和評估,為後續工作安排和決策提供依據。

著名諮詢公司凱捷與Micro Focus在2020年末聯合釋出了全球質量報告2020-21(具體可參考軟體質量報導公眾號文章 《2020-21軟體測試中的重要趨勢及應對措施》)。來自32個國家、10個行業的1750名QA/測試經理、資訊長和其他IT高管參與了有關軟體測試發展趨勢的調查,總結出測試領域的主要趨勢,內容包括:QA團隊正逐步轉型為質量協調者;自動化測試比重不斷上升;測試環境和資料管理不斷完善;AI技術在測試中的作用持續上升。這些趨勢為軟體測試從業者指明瞭方向,也提出了更高的技能要求。


這是測試工程師最好的時代,因為以手工測試為主的重複勞動已成為過去,測試從業者的能力和待遇不再亞於開發人員;這是測試工程師最壞的時代,很多大廠已經將勞動密集性的重複測試工作外包給了第三方,轉而只僱傭相對少量具備更強專業能力的高階人才。


為適應軟體測試的發展趨勢,幫助大家提高測試方面的綜合技能,我們即將推出測試開發有關的專題。內容包括以下3個方面,歡迎大家一起探討和多提寶貴建議。

  • 測試人員開發技能:程式語言、計算機系統、網路和資料庫等;
  • 軟體測試高階技術:自動化、效能、介面測試工具使用和開發;
  • 軟體研發工具鏈:  DevOps、CI/CD持續整合和部署等工具鏈。

最後,我們翻譯一份來自微軟,這個市值重回世界第一的軟體公司的一份用人需求,供正在朝著測試開發方向努力的朋友參考。

Responsibilities 職責:

Design, develop and implement automated tools and test infrastructure for validating Exchange features and interfaces;
設計、開發和實現自動化測試工具和平臺,用於驗證Exchange郵件服務的功能特性和介面。


Participate in ongoing product specification and code reviews;
參與產品需求規約和程式碼的評審;


Translate customer requirements and product goals into appropriate tests;
根據客戶需求和產品目標,設計充分、有效的測試用例;


Overall 60-80% of your time will be developing code in C++ (moving toward C#).
工作中6到8成的時間,將使用C++語言進行開發程式設計(未來有可能切換到C#)。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978795/viewspace-2775342/,如需轉載,請註明出處,否則將追究法律責任。

相關文章