一提及外包測驗,大部分人的第一印象就是:作業強度大,技術含量低,沒有歸屬感!
本人畢業于某普通二本院校非計算機專業,跨專業入行測驗,至今有近 5年作業經驗,
第一份測驗作業是在騰訊做了兩年外包,總體感受就是
- 這份作業缺乏歸屬感,心里總有一種落差,進步空間不大,
- 接觸不到核心技術,公司沒有針對你的技術培訓與探究,
- 作業簡單,業務重復,通常是工具人的存在,
- 薪資不高,雖然有加班費,但是還是不高
- 在深思過后,我還是準備提升自己,
在一次偶然機會下開始初步接觸了自動化測驗,也學習了 Jenkins 操作以及 Linux 命令列等相關基礎技能,
不是在學習,就是在學習的路上,后來嘗試著接觸一些代碼和一些框架,把自己所學的知識融入到你自己的專案中去,把自己的專案整理出一個測驗框架去學selenium,網站的架構,代碼知識,知識,網路瓶頸,系統優化,優化腳本,去設計場景,去獲取目標用戶量,去執行,去分析壓力結果,
做為一名測驗人,我想分享一下這些年來,我對于技術一些歸納和總結,和自己對作為一名高級自動化測驗需要掌握那些技能的筆記分享,希望能幫助到有心在技術這條道路上一路走到底的朋友!
1、軟體測驗基礎理論知識:
- 軟體測驗理論知識是開展測驗作業的理論依據和支撐,是測驗很重要的階段必須掌握的技能,
- 軟體的質量模型:軟體測驗程序保障軟體的質量,從哪些方面保障可以從質量模型出發思考
- 測驗分類:軟體測驗程序可以按照不同角度進行分類,基礎測驗到高級測驗遞程序序
- 開發流程:告訴測驗人員一個軟體完整的生命周期,軟體從無到有到消亡的程序
- 測驗流程:掌握并指導測驗人員在實際專案中如何開展測驗作業,這要求測驗人員對常見的主流測驗流程有較為透徹的理解,遇到不同的軟體專案,知道從何處著實能最有效率的測驗軟體缺陷
- 測驗計劃與方案:如何規劃在專案中開展測驗活動,確保測驗活動有序進行
- 設計用例方法:黑盒測驗階段必須掌握的一些測驗用例的設計方法,比如黑盒測驗用例的設計方法、測驗用例元素等等
- 軟體缺陷:在測驗執行程序中應該確定缺陷并提交缺陷報告
- 缺陷管理:提交缺陷后在實際作業中如何和開發協助處理驗證提交的問題,例如:bug的等級優先級分類、bug的描述、bug的生命周期、缺陷管理工具使用,如禪道等,
- 測驗報告:測驗程序的回顧和結果確認,生成系統性的專業軟體測驗評估報告,

2、軟體測驗功底技術——Linux系統
linux系統是主要的服務端作業系統,也是從事IT崗位的大部分人員必須具備的基本技術之一,
- linux系統基本知識:多用戶,多任務,發行版本等
- 常見 linux操作命令:日志查看,檔案壓縮、解壓,用戶管理,檔案權限等
- 會部署和配置基本的應用jdk、 mysql、 tomcat
- docker安裝使用
- 撰寫基本的 shell RAD本
- 遠程終端工具使用: shell, xftps等

3、軟體測驗功底技術——Sql資料庫
資料庫作為軟體系統必備的應用系統,在諸如介面測驗、性能測驗等等程序中往往需要操作資料庫,驗證資料正確性完整性,都離不開資料庫的增刪改查操作,在專案部署階段資料庫還需要配合專案部署,在性能測驗、介面自動化測驗中都需要資料庫的支撐,
- 資料庫基本概念
- 關系型資料庫
- MYSQL基本的增改查陳述句,存盤程序
- MYSQL復雜查詢、多表查詢
- MYSQL索引及事務相關概念
- 資料庫客戶端工具使用:如 Navicat

4、軟體測驗功底技術——編程語言
推薦沒有編程基礎的朋友可以學習Python語言
Python語言的學習內容包含以下知識點:
Python基礎:Python語言特點、運行環境、基本語法、代碼風格、示例程式
資料結構:
- 基本資料結構:數字、字串、型別判斷、型別轉換、切片、字串格式化、數值運算、位置引數和關鍵字引數;
- 組合資料結構:串列、元組、范圍、字典、集合、不可hash物件、解包、記憶體地資料結構址、不可變資料
- 程式控制:順序結構、回圈結構、判斷結構、例外處理、邏輯運算子
- 函式:定義函式、函式的引數、回傳值、變數作用域、匿名函式、常用內置函式
- 模塊和庫:模塊和包、import關鍵字、常用標準庫、常用第三方庫、包管理工具pip
- 面向物件:面向物件起源和優勢、面向物件的特性類和物件的聯系、物件的特殊方法
- 日志記錄:baseConfig、檔案日志、郵件日志、定制格式、內置占位符、等級過濾、分級傳播、組態檔
- 測驗框架:unitest、pytest等
- 并發編程:多行程、多執行緒、協程、執行緒池、同步控制、執行緒通信、分布式、猴子補丁、 async語法、生成器
- 網路編程:socket編程基礎、TCP服務端和客戶端、并行請求處理、HTTP服務端和客戶端

5、軟體測驗自動化進階——介面測驗
介面測驗本質也是功能測驗的一種,通過腳本或者工具,模擬客戶端對服務端介面進行呼叫,因為是從介面層測驗,所以能更早的發現問題,從而提高測驗效率,降低修復成本,
- http/httpst協議學習
- 常見請求方法學習:GET、POST
- cookie和 session學習
- 介面的基本概念
- 介面檔案認識
- 介面測驗用例撰寫
- 介面測驗工具使用:postman、Jmeter、SoapUl

6、軟體測驗自動化進階——性能測驗
性能測驗的技術要求很高,不僅僅要對性能測驗的指標、測驗分類、測驗設計有很深刻的理解,還要學習系統業務和架構相關知識,這樣才能更好的設計性能場景,
- 性能基本概念:性能測驗意義、常見性能指標理解、性能測驗的分類
- 性能測驗流程:性能需求分析、性能場景設計、測驗腳本撰寫、測驗執行資源監控、性能調優、回歸測驗
- Jmeter及 roadrunner使用
- 性能測驗報告輸出

7、軟體測驗自動化進階——app自動化
越來越多的專案和系統通過移動端來提供服務,移動端的軟體質量越來越重要,App自動化測驗已經成為自動化測驗的重要內容,借助Appium,使得App自動化測驗和Web自動化測驗有很多相通之處,不過作為測驗工程師,依然需要掌握移動端應用的工具和特性,
- Appium移動測驗環境搭建:Appium ServerAppium和 Desktop、 Android運行環境搭建、模擬器安裝和連接、真機設備除錯模式、adb、 weditor、 - - UiAutomator22、 Monkey
- Appium元素定位:原生應用元素定位、純web應用元素定位、混合應用元素定位
- Appium元素互動:等待元素加載,元素的基本屬性和方法、滑動、拖動、縮放操作、下拉選擇操作、 toast訊息處理、常見控制元件分析、常見布局分析
- 封裝測驗框架:集成Appium、adb等工具、預定義例外處理、記錄Appium日志、螢屏截圖、打造多用途測驗框架

8、軟體測驗自動化進階——持續集成和持續測驗
持續集成和持續測驗是一個在迭代中構建、測驗產品并修復Bug的程序,它有助于團隊在開發階段的初期發現缺陷,這時的缺陷通常相對不那么復雜,并且更容易被解決,通過持續集成和持續測驗,可以盡早地將錯誤風險降至最低,并加快交付更好質量的軟體,
- 版本控制Git:背景介紹、環境部署、作業區、暫存區和提交區、分支創建與合并、解決沖突、標簽、 config與別名、本地倉與遠程倉、 GitHub與碼云
- 持續集成 Jenkins:背景介紹、環境部署、檔案結構、遠程倉庫與私服、ja包依賴、插件管理
- 容器Docker:了解 Dockers的鏡像、倉庫、容器、 Docker Engine和架構圖、網路設定、資料持久化
最后為大家準備一份配套的學習資源
這些資源都共享在裙里面,需要的可以加裙946094265自取,包括,軟體學習路線圖,50多天的上課視頻、16個突擊實戰專案,80余個軟體測驗用軟體,37份測驗檔案,70個軟體測驗相關問題,40篇測驗經驗級文章,上千份測驗真題分享,還有2021軟體測驗面試寶典,還有軟體測驗求職的各類精選簡歷,希望對大家有所幫助……
學習不要孤軍奮戰,最好是能抱團取暖,相互成就一起成長,群眾效應的效果是非常強大的,大家一起學習,一起打卡,會更有學習動力,也更能堅持下去,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/384039.html
標籤:其他
