
能想象到一個在社會上被逼瘋的社會小青年!出校門前不單單沒找到對口的專業,還被迫做了些閑雜的作業!要不是一個偶然的聊天交談中說到程式員薪資特別的高,掙扎進入IT行業!還不知道現在做的是啥作業!
我是從各種網站自學入職了最簡單的測驗點點點,那時的測驗工程師是真正的朝陽行業,熊貓級別的國寶,一些二線城市都沒有軟體測驗工程師這個崗位,甚至一些二線的開發工程師都不知道軟體測驗工程師是干什么的?(毫不夸張)!一些有實力的公司為了過CMMI5級軟體質量體系認證,高薪聘請測驗工程師,只要會一點點測驗在一線都能輕松過萬,一個公司能請到幾個軟體測驗工程師做軟體質量把控不管是在政府的專案投標還是商業談判軟體開發業務都有巨大的優勢,當時的測驗體系基本還沒有太多的流程化和規范化,是真正的點點點君,

但是:隨著和開發的交集越多,這讓我認識到后臺邏輯對于測驗作業的幫助,編程語言的能力將決定你測驗能力的高度和深度
自動化萌新期:
大概在2012年的時候,那時候還是JAVA為王的時代,隨著軟體測驗和人工智能的發展,Python語言慢慢開始流行,當時的自動化測驗才剛開始萌芽,還不成熟,各個公司就爭先恐后的部署自動化,我們公司也不例外,我們所在的【P2P創新事業部】也要求我們使用Python和Selenium來嘗試開展自動化測驗,結果不了了之,主要原因歸結于:
1.自動化測驗技術不成熟,
2.自動化測驗流程不規范,
2.測驗人員的技能還達不到標準,
弄得當時很多的互聯網公司的測驗工程師焦頭爛額,隨之都暫停自動化業務,自動化就像是一陣風吹過,只留下一地雞毛,
隨著整個互聯網在自動化方面的投入,雖然有不少失敗的案例,但是確促進著整個自動化產業鏈的飛速發展!
同時:我也嗅到了自動化測驗必然是以后的趨勢!所以我就在有計劃的往這一塊學習,留下過足跡的網站包括:
Python菜鳥教程,CSDN,知乎,B站等等!不懂的就在論壇發帖!各種找資料!
長期的測驗作業讓我對軟體測驗有了比較深入的了解,但是如今作業上仍然偶爾會犯錯誤,離一個優秀的測驗工程師還有一段很長的距離,道路且長來日可期,腳步慢一點也無妨,下面總結一下我的作業心得,
1、熟悉業務需求說明書
測驗工程師的主要作業體現在測驗報告和測驗用例上,只有熟悉掌握專案的業務需求,才能設計出全面,覆寫率高,多例外流的測驗用例,有一些細節甚至要比產品經理還要考慮細致,只要遇到任何不清楚的、有疑問的地方,就一定要找產品經理確認,
2、熟悉開發詳細設計
很多測驗工程師可能覺得開發的詳細設計不需要了解,只要這個軟體的功能做出來了就行了,具體是怎么做的,不需要關心,這種想法是不正確的,了解開發的詳細設計后,你才知道這個業務的整個流程是怎么樣的,你才知道開發有沒有把所有的場景,例外流都考慮進來,是不是真的理解了這個業務需求,
3、把自己當用戶來測驗
把自己當成用戶來測驗這個軟體,模擬用戶可能會操作的所有行為,牢記軟體的每個頁面,每個功能,遇到問題提bug時,標題和內容要描述清楚,簡潔,沒有歧義,寫上重現的步驟,最好附上問題的截圖,每次測驗完成后,一定要寫測驗報告,把自己遇到的問題或者認為不合理的地方歸納總結出來,邏輯要清晰,字數要簡潔,
4、不斷學習,了解軟體的基礎知識
如果不了解軟體的基礎知識,測驗永遠只會停留在表明上,只會在頁面上點點點,不知道后端是如何運轉的,前后端是如何聯系的,甚至連開發在說什么都聽不懂,開發的詳細設計看了也只是按著他的來,不會帶著質疑的精神來提疑問,最少要知道軟體是由什么語言來寫的,用的什么框架,用的什么資料庫,只有懂得了基本的軟體知識,和開發人員溝通起來才不會雞同鴨講,
5、保持作業的激情和興趣
測驗作業是一遍又一遍的重復性作業,一個用例可能執行了很多遍,每次專案升級,都要求回歸測驗一次,把原來上百條的用例再執行一次,需要耗費大量的時間和精力,程序是非常枯燥的,如果能保持激情和興趣,每一次執行就當做是第一次執行那樣有新鮮感,作業起來就會容易得多了,
作業的時候,總結了一下我的一些測驗小技巧,
1、按F12,查看除錯界面,分析bug歸屬于前端還是后端
在測驗的時候,有時候會遇到一些問題,不知道是前端還是后端的問題,有時候提bug分派錯了,會直接影響解決bug的進度,有時候測驗一些串列資料時,發現查詢串列資料不符合,就不好判斷是前端問題還是后端問題,這個時候就可以按F12,進入除錯界面,選擇Network界面,這里的Headers可以看到前端請求地址和請求引數,Respons可以看到后端回傳資料,
這里舉一個例子來說明一下,前端展示有一個資料串列有一個查詢條件是狀態,狀態分為:全部、成功、失敗,
當查詢成功狀態時,前端串列展示的資料卻是失敗的,這個時候可能會想是不是前端展示錯誤了,首先按F12,查看除錯界面,看后端回傳的資料是不是成功狀態的,結果一看,后端是回傳了失敗狀態的資料,這個時候可能會想是不是后端錯誤了,別急,最后還要查看Headers里面的請求地址和引數,這個時候,發現請求引數錯誤,不是狀態成功的引數,而是狀態失敗的引數,這樣就可以確定是前端的問題了,
2、查看后端日志
在做測驗時,一定要打開后端日志,當在前端頁面操作時,突然彈出一個報錯提示時,如何分析是前端還是后端錯誤時,可以從日志里面體現出來,如果后端日志沒有報錯,則考慮是前端的問題,如果后端有日志報錯,則考慮是后端的問題,把日志截圖出來貼到bug詳情里面,可以方便開發查看問題,操作的時候,查看日志的SQL陳述句寫得是否正常,是否符合操作的要求,都可以自己簡單分析一下,
3、查看資料庫
在做測驗時,一定要檢查資料庫中,各個模塊對應的哪些表,表欄位是否符合要求,表設計是否合理,有沒有索引,有沒有唯一鍵,表與表之間如何聯系,當表資料很多時,有沒有做舊資料移表處理,這些都需要檢查一遍,
4、照資料
在做測驗時,有時候需要查詢串列的很多頁,需要很多資料,手動去添加的話,如果添加一條要花20秒,添加200條豈不是要1個小時,有時候測驗資料匯出功能,超過1萬條資料時,走異步,添加1萬條的話豈不是要幾天,非常浪費時間和精力,這個時候,你可以自己去資料庫中照資料,直接對需要使用的表格插入資料,寫一個for回圈就可以輕松搞定了,
5、錄制腳本
在做測驗時,每次專案升級時,都要來一遍回歸測驗,可以使用一些工具來輔助,達到事半功倍的效果,我就是使用的badboy,首先錄制我要操作的一些動作,比如對串列的一些增加,洗掉,修改,錄制完成后保存為jmeter格式,然后使用jmeter打開這個腳本,運行就可以了,當然了,有時候運行得不太順利,就需要手動修改一下腳本,也可以添加一個“監聽器-查看結果樹”來判斷運行的結果狀況,
真正學習和實踐自動化測驗有兩年了,識訓了一些,下面總結一下我的一些自動化測驗的想法,
1、自動化測驗的優點
①降低回歸成本
②提高回歸覆寫率
③提高回歸效率
④提高回歸的穩定性
2、自動化測驗的缺點
①自動化更適用于回歸和冒煙,難以發現BUG
②不是所有系統、所有功能都適合做自動化測驗
③自動化的腳本撰寫和維護時間長
3、什么專案適合做自動化測驗
①專案的需求穩定,變動不大
②專案的周期長,可持續迭代
③專案支持的平臺多,如多瀏覽器兼容性測驗、手機多系統版本測驗等
④通過手工測驗無法實作的測驗活動,如壓力測驗
4、自動化測驗分類
①介面自動化測驗
②UI頁面的自動化測驗
最開始,我也是從介面自動化做起,因為當時作業的專案都是以資料查詢、統計為主的,UI頁面的自動化測驗不知如何下手,后來就去網上看一下其他人是如何來做的,發現很多人都是說像這種統計資料的專案,基本上無法做UI自動化測驗,后面就想著就算是統計資料的一個串列,也不用每一條,每一個欄位都來檢查,只要檢查某一些欄位就可以了,如此一來就簡單多了,首先我會去獲取頁面上的一個串列的第一條的第一個欄位,然后再去連接資料庫,獲取此欄位的值,兩個值對比一下是一樣的,那就沒有問題了,
自動化雖然不能完全代替手工,但是卻省去了手工的反復,作業中可能一些專案不好操作,只要靈活運用,就沒有做不了的自動化,要想做好自動化,必須要擁有編碼能力,至少要熟悉自動化工具/框架的代碼語言,最好有一定的編碼能力,同時代碼邏輯要清晰,否則不僅不能保證用例的邏輯性、業務性與健壯性等要素,也不能保證效率,
真正的自動化階段:
2014年,經過近兩年的技術沉淀以及互聯網公司的摸索發展,自動化技術已經日漸成熟,我也是在有計劃的跳槽到這方面的崗位,很幸運的,當時入職了一家做Python2.7+Selenium2的UI自動化公司,后來也開始嘗試使用過RobotFramework框架,
2016年我開始做自動化全堆疊工程師,和團隊一起從零開始搭建一整套UI自動化+介面自動化一體化框架平臺,目前一體化框架平臺已經在公司得到應用,
選擇適當的時候,盡量發揮好自己的優勢,“長江后浪推前浪,前浪死在沙灘上”,我相信肯定還有不少的軟體測驗工程師站在“十字路口”迷茫,無助,找不到自己的方向,一切的迷茫都是因為想得太多而做得太少,每位測驗從業者也都能意識到目前自己的窘境,但是能順應時代做出改變的人還是田少,多數人都是"泰山崩于前而面不改色",眼睜睜的看著自己被行業所淘汰?下面是我整理撰寫的自動化測驗工程師的發展規劃路線:希望對你有幫助!會給你帶來方向和靈感!
1、編程語言Java&Python以及前端技術,以Python為例:

2、UI自動化之Selenium的API應用

3、介面自動化

4、移動端App自動化

上面就是我為大家整理出來的一份自動化測驗工程師發展方向的知識架構體系圖,希望大家能在這里收益良多,可以說,這個進階的程序會讓你很難受,但是只要你熬過去了,以后的生活就輕松很多了,所謂萬事開頭難,只要邁出了第一步,你就成功了一半,

最后: 可以關注公眾號:傷心的辣條 ! 進去有許多資料共享!資料都是面試時面試官必問的知識點,也包括了很多測驗行業常見知識,其中包括了有基礎知識、Linux必備、Shell、互聯網程式原理、Mysql資料庫、抓包工具專題、介面測驗工具、測驗進階-Python編程、Web自動化測驗、APP自動化測驗、介面自動化測驗、測驗高級持續集成、測驗架構開發測驗框架、性能測驗、安全測驗等,
如果我的博客對你有幫助、如果你喜歡我的博客內容,請 “點贊” “評論” “收藏” 一鍵三連哦!喜歡我們自動化的小伙伴們,可以加入我們的技術交流扣扣群:914172719(里面有超多學習資料免費分享喲)
好文推薦
轉行面試,跳槽面試,軟體測驗人員都必須知道的這幾種面試技巧!
面試經:一線城市搬磚!又面軟體測驗崗,5000就知足了…
面試官:作業三年,還來面初級測驗?恐怕你的軟體測驗工程師的頭銜要加雙引號…
什么樣的人適合從事軟體測驗作業?
那個準點下班的人,比我先升職了…
測驗崗反復跳槽,跳著跳著就跳沒了…
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/301458.html
標籤:其他
