我在測試行業(yè)爬模滾打7年,從點(diǎn)點(diǎn)點(diǎn)的功能測試到現(xiàn)在成為高級(jí)測試,,工資也翻了幾倍,。個(gè)人覺得,測試的前景并不差,,只要自己肯努力,。 我剛出來的時(shí)候是在鵝廠做外包的功能測試,天天點(diǎn)點(diǎn)點(diǎn),,很悠閑,點(diǎn)了兩年,,發(fā)覺這樣下去會(huì)廢,,然后就開始學(xué)習(xí)python,java,,學(xué)著搞自動(dòng)化測試,,不過說實(shí)話,自學(xué)的話很容易死在入門階段,,要有很強(qiáng)的自制力,。 后面學(xué)會(huì)了一些皮毛,跳槽去另外一家公司,,平常比較好學(xué),,加班或者沒什么項(xiàng)目做的時(shí)候都會(huì)自己看書,學(xué)敲代碼,,被領(lǐng)導(dǎo)賞識(shí),,派去總部核心技術(shù)團(tuán)隊(duì)學(xué)習(xí)了一個(gè)禮拜的ui自動(dòng)化,是有專人帶,,然后回來就把公司app的自動(dòng)化交給了我,,這才算是真正入門自動(dòng)化了。 然后就開始自己琢磨,,抄人家的框架,,等等,做是做出來了,,但是比較low,,后面又跳槽去了一家金融公司,專職做自動(dòng)化,,幸好到了這家公司,,這里自動(dòng)化的負(fù)責(zé)人是字節(jié)出來的,很牛,然后在那家公司我拼命跟著他學(xué),,講真的,,學(xué)到了好多好多東西,進(jìn)這家公司的時(shí)候,,人家給我定級(jí)是初中級(jí)自動(dòng)化,,在這做了一年多后再跳槽,我發(fā)現(xiàn)面試的題目我基本一看就會(huì),,跳到下一家直接就是高級(jí)了,,所以,如果能跟這種大牛一起共事,,一定要多學(xué),。 現(xiàn)在我到新公司做接口自動(dòng)化,然后在開發(fā)一個(gè)測試平臺(tái)(突然發(fā)現(xiàn),,自己還是涉足挺廣),,我相信,當(dāng)我找下一份工作的時(shí)候,,要么就是測試經(jīng)理,,要么就是高級(jí)測試開發(fā)了,所以不要說測試這個(gè)行業(yè)沒前途,,這種話都是那些不上進(jìn)的,,自暴自棄的人說的;不要考慮太多,,扎實(shí)做好當(dāng)下的每一件事,,有時(shí)間就去學(xué)習(xí)充實(shí)自己,擴(kuò)展自己知識(shí)的廣度,,加深自己專業(yè)領(lǐng)域的深度,,這樣的人永遠(yuǎn)都不會(huì)被淘汰。 做為一名測試人,,接下來我想分享一下這些年來,,我對(duì)于技術(shù)一些歸納和總結(jié),和自己對(duì)作為一名高級(jí)自動(dòng)化測試需要掌握那些技能的筆記分享,,希望能幫助到有心在技術(shù)這條道路上一路走到底的朋友,! 1、軟件測試基礎(chǔ)理論知識(shí):軟件測試?yán)碚撝R(shí)是開展測試工作的理論依據(jù)和支撐,,是測試很重要的階段必須掌握的技能,。 軟件的質(zhì)量模型:軟件測試過程保障軟件的質(zhì)量,從哪些方面保障可以從質(zhì)量模型出發(fā)思考 測試分類:軟件測試過程可以按照不同角度進(jìn)行分類,,基礎(chǔ)測試到高級(jí)測試遞進(jìn)過程 開發(fā)流程:告訴測試人員一個(gè)軟件完整的生命周期,,軟件從無到有到消亡的過程 測試流程:掌握并指導(dǎo)測試人員在實(shí)際項(xiàng)目中如何開展測試工作。這要求測試人員對(duì)常見的主流測試流程有較為透徹的理解。遇到不同的軟件項(xiàng)目,,知道從何處著實(shí)能最有效率的測試軟件缺陷 測試計(jì)劃與方案:如何規(guī)劃在項(xiàng)目中開展測試活動(dòng),,確保測試活動(dòng)有序進(jìn)行 設(shè)計(jì)用例方法:黑盒測試階段必須掌握的一些測試用例的設(shè)計(jì)方法。比如黑盒測試用例的設(shè)計(jì)方法,、測試用例元素等等 軟件缺陷:在測試執(zhí)行過程中應(yīng)該確定缺陷并提交缺陷報(bào)告 缺陷管理:提交缺陷后在實(shí)際工作中如何和開發(fā)協(xié)助處理驗(yàn)證提交的問題,。例如:bug的等級(jí)優(yōu)先級(jí)分類、bug的描述,、bug的生命周期,、缺陷管理工具使用,如禪道等,。 測試報(bào)告:測試過程的回顧和結(jié)果確認(rèn),,生成系統(tǒng)性的專業(yè)軟件測試評(píng)估報(bào)告。 2,、軟件測試功底技術(shù)——Linux系統(tǒng)linux系統(tǒng)是主要的服務(wù)端操作系統(tǒng),,也是從事IT崗位的大部分人員必須具備的基本技術(shù)之一。 linux系統(tǒng)基本知識(shí):多用戶,,多任務(wù),發(fā)行版本等 常見 linux操作命令:日志查看,,文件壓縮,、解壓,用戶管理,,文件權(quán)限等 會(huì)部署和配置基本的應(yīng)用jdk,、 mysql、 tomcat docker安裝使用 編寫基本的 shell RAD本 遠(yuǎn)程終端工具使用: shell, xftps等 3,、軟件測試功底技術(shù)——Sql數(shù)據(jù)庫數(shù)據(jù)庫作為軟件系統(tǒng)必備的應(yīng)用系統(tǒng),,在諸如接口測試、性能測試等等過程中往往需要操作數(shù)據(jù)庫,,驗(yàn)證數(shù)據(jù)正確性完整性,,都離不開數(shù)據(jù)庫的增刪改查操作,在項(xiàng)目部署階段數(shù)據(jù)庫還需要配合項(xiàng)目部署,。在性能測試,、接口自動(dòng)化測試中都需要數(shù)據(jù)庫的支撐。 數(shù)據(jù)庫基本概念 關(guān)系型數(shù)據(jù)庫 MYSQL基本的增改查語句,,存儲(chǔ)過程 MYSQL復(fù)雜查詢,、多表查詢 MYSQL索引及事務(wù)相關(guān)概念 數(shù)據(jù)庫客戶端工具使用:如 Navicat 4、軟件測試功底技術(shù)——編程語言推薦沒有編程基礎(chǔ)的朋友可以學(xué)習(xí)Python語言 Python語言的學(xué)習(xí)內(nèi)容包含以下知識(shí)點(diǎn): Python基礎(chǔ):Python語言特點(diǎn),、運(yùn)行環(huán)境,、基本語法、代碼風(fēng)格、示例程序 數(shù)據(jù)結(jié)構(gòu): 基本數(shù)據(jù)結(jié)構(gòu):數(shù)字,、字符串,、類型判斷、類型轉(zhuǎn)換,、切片,、字符串格式化、數(shù)值運(yùn)算,、位置參數(shù)和關(guān)鍵字參數(shù),; 組合數(shù)據(jù)結(jié)構(gòu):列表、元組,、范圍,、字典、集合,、不可hash對(duì)象,、解包、內(nèi)存地?cái)?shù)據(jù)結(jié)構(gòu)址,、不可變數(shù)據(jù) 程序控制:順序結(jié)構(gòu),、循環(huán)結(jié)構(gòu)、判斷結(jié)構(gòu),、異常處理,、邏輯運(yùn)算符 函數(shù):定義函數(shù)、函數(shù)的參數(shù),、返回值,、變量作用域、匿名函數(shù),、常用內(nèi)置函數(shù) 模塊和庫:模塊和包,、import關(guān)鍵字、常用標(biāo)準(zhǔn)庫,、常用第三方庫,、包管理工具pip 面向?qū)ο螅好嫦驅(qū)ο笃鹪春蛢?yōu)勢、面向?qū)ο蟮奶匦灶惡蛯?duì)象的聯(lián)系,、對(duì)象的特殊方法 日志記錄:baseConfig,、文件日志、郵件日志,、定制格式,、內(nèi)置占位符、等級(jí)過濾,、分級(jí)傳播,、配置文件 測試框架:unitest,、pytest等 并發(fā)編程:多進(jìn)程、多線程,、協(xié)程,、線程池、同步控制,、線程通信,、分布式、猴子補(bǔ)丁,、 async語法,、生成器 網(wǎng)絡(luò)編程:socket編程基礎(chǔ)、TCP服務(wù)端和客戶端,、并行請(qǐng)求處理,、HTTP服務(wù)端和客戶端 5、軟件測試自動(dòng)化進(jìn)階——接口測試接口測試本質(zhì)也是功能測試的一種,,通過腳本或者工具,,模擬客戶端對(duì)服務(wù)端接口進(jìn)行調(diào)用。因?yàn)槭菑慕涌趯訙y試,,所以能更早的發(fā)現(xiàn)問題,,從而提高測試效率,降低修復(fù)成本,。 http/httpst協(xié)議學(xué)習(xí) 常見請(qǐng)求方法學(xué)習(xí):GET,、POST cookie和 session學(xué)習(xí) 接口的基本概念 接口文檔認(rèn)識(shí) 接口測試用例編寫 接口測試工具使用:postman、Jmeter,、SoapUl 6、軟件測試自動(dòng)化進(jìn)階——性能測試性能測試的技術(shù)要求很高,,不僅僅要對(duì)性能測試的指標(biāo),、測試分類、測試設(shè)計(jì)有很深刻的理解,。還要學(xué)習(xí)系統(tǒng)業(yè)務(wù)和架構(gòu)相關(guān)知識(shí),,這樣才能更好的設(shè)計(jì)性能場景。 性能基本概念:性能測試意義,、常見性能指標(biāo)理解,、性能測試的分類 性能測試流程:性能需求分析、性能場景設(shè)計(jì),、測試腳本編寫,、測試執(zhí)行資源監(jiān)控、性能調(diào)優(yōu),、回歸測試 Jmeter及 roadrunner使用 性能測試報(bào)告輸出 7,、軟件測試自動(dòng)化進(jìn)階——app自動(dòng)化越來越多的項(xiàng)目和系統(tǒng)通過移動(dòng)端來提供服務(wù),,移動(dòng)端的軟件質(zhì)量越來越重要,App自動(dòng)化測試已經(jīng)成為自動(dòng)化測試的重要內(nèi)容,。借助Appium,,使得App自動(dòng)化測試和Web自動(dòng)化測試有很多相通之處,不過作為測試工程師,,依然需要掌握移動(dòng)端應(yīng)用的工具和特性,。 Appium移動(dòng)測試環(huán)境搭建:Appium ServerAppium和 Desktop、 Android運(yùn)行環(huán)境搭建,、模擬器安裝和連接,、真機(jī)設(shè)備調(diào)試模式、adb,、 weditor,、 - - UiAutomator22、 Monkey Appium元素定位:原生應(yīng)用元素定位,、純web應(yīng)用元素定位,、混合應(yīng)用元素定位 Appium元素交互:等待元素加載,元素的基本屬性和方法,、滑動(dòng),、拖動(dòng)、縮放操作,、下拉選擇操作,、 toast消息處理、常見控件分析,、常見布局分析 封裝測試框架:集成Appium,、adb等工具、預(yù)定義異常處理,、記錄Appium日志,、屏幕截圖、打造多用途測試框架 8,、軟件測試自動(dòng)化進(jìn)階——持續(xù)集成和持續(xù)測試持續(xù)集成和持續(xù)測試是一個(gè)在迭代中構(gòu)建,、測試產(chǎn)品并修復(fù)Bug的過程。它有助于團(tuán)隊(duì)在開發(fā)階段的初期發(fā)現(xiàn)缺陷,,這時(shí)的缺陷通常相對(duì)不那么復(fù)雜,,并且更容易被解決。通過持續(xù)集成和持續(xù)測試,,可以盡早地將錯(cuò)誤風(fēng)險(xiǎn)降至最低,,并加快交付更好質(zhì)量的軟件。 版本控制Git:背景介紹,、環(huán)境部署,、工作區(qū),、暫存區(qū)和提交區(qū)、分支創(chuàng)建與合并,、解決沖突,、標(biāo)簽、 config與別名,、本地倉與遠(yuǎn)程倉,、 GitHub與碼云 持續(xù)集成 Jenkins:背景介紹、環(huán)境部署,、文件結(jié)構(gòu),、遠(yuǎn)程倉庫與私服、ja包依賴,、插件管理 容器Docker:了解 Dockers的鏡像,、倉庫、容器,、 Docker Engine和架構(gòu)圖,、網(wǎng)絡(luò)設(shè)置、數(shù)據(jù)持久化 學(xué)習(xí)不要孤軍奮戰(zhàn),,最好是能抱團(tuán)取暖,,相互成就一起成長,群眾效應(yīng)的效果是非常強(qiáng)大的,,大家一起學(xué)習(xí),,一起打卡,會(huì)更有學(xué)習(xí)動(dòng)力,,也更能堅(jiān)持下去,。 |
|