測試人員學習業務的方法技巧

測試人員學習業務的方法技巧

 

摘要:

   新入職的測試工程師,以及測試工程師面對新產品開發時,總有一些強相關的業務知識需要學習理解。

   本文給出一些小的技巧,一些在思考邏輯方面的總結,以便測試工程師能夠更系統的思考、學習,提高效率。

 
   
    有句話說的很好:不少學者對人類思維的實際運動過程以及解決實際問題的過程進行過研究。總結這些研究成果,發現高效思維者與低效思維者思考過程的區別在於,前者思考問題條理清晰,後者則混亂無頭緒。那麼高效思維的方法有哪些呢?
    這個命題太大,並且針對不同的知識,具體有效的學習方法還有細微的差別(比如學習語言和學習藝術、學習駕駛等)。那麼,針對測試人員學習業務,有沒有一些好的思維方法,和一些小技巧,讓學習過程高效一些?
    本文部分方法具有通用性,部分方法是針對測試職業的特性總結而成,其他工作崗位的同事可以參考一二。
    有一些通用的學習方法,是經過很多人提煉出來,可以提高自己學習效率的,我們把這類方法和實際的業務知識學習,並進行概括總結,形成此文。
 
    概括來講,即爲三個要求,三種思路,七種方法,一套完整的學習展示思路。
 
 

1.三個要求

   第一個要求:用生活中的例子來講述你學習的業務知識點。
   第二個要求:文檔更新要求——從培訓文檔中學習,並不斷的完善培訓文檔。
   第三個要求:針對新人,能動手時,儘量多動手進行實際操作,一邊看一邊學習。
 
  •    第一個要求:用生活中的例子來講述你學習的業務知識點。
    網絡上有一篇文章,非常有意思——《如何在三個月內獲得三年的工作經驗》,其中一個核心的思想就是:你自己把某一門技術,或一個行業的資料大量的蒐集起來,然後自主的編寫行業分析報告。通過這種方法,你能快速的獲得別人幾年才能積累的工作經驗。
    在學習中,我們認爲只有自己理解的知識,纔是自己真正掌握的知識。比如商場的導購員,什麼納米技術,什麼最新科技,什麼名詞、數字量一套套,但是他們不理解,所做的也就是背熟了臺詞而已。同樣,在學習業務知識和新功能規格時,不僅僅要求我們會背誦,而是要求我們能理解。
   
    新測試工程師面對一大堆系統說明書,業務規格書,很多拗口的專業名詞,每天都看到大家對着ppt或者word文檔猛看,實際的效果怎麼樣?這些知識點怎麼才能說是你理解,並掌握了?
    證明你掌握的方法,就是你用自己的話重新把這個知識點進行重構描述(七種方法的重新描述法)。更進一步的要求,即使採用聯想的方法,用自己生活中的例子來講述你學習的業務知識點。要求觸類旁通,擴大大家的思路,也通過聯想記憶的方法,讓業務知識,業務邏輯的學習理解更直觀。
    掌握知識點,要求自己能重新描述,即:當你能夠自己一二三四的講明白後,才能說這個知識點你學會了。
 
    比如用自己生活中的經驗來聯想記憶、擴展描述的例子
    舉例1  TCP/IP,包傳輸
    什麼是切包傳輸,什麼是丟包重傳?結合生活經驗,比如寄快遞,你從北京寄一輛摩托車到上海。但是東西太大,一個包打不下,那麼你就把摩托車拆分,打成一個個的包並編上號碼:1/2/3/4/5……,然後一次寄到上海,可能途中還會分成幾個批次,走不通的方式發到上海。然後上海收到貨物後,確認所有的包都收到,然後拆包,重新組成一輛完整的摩托車。
 如果這些包裏面,到達上海後,第3包不見了,你通知北京,少了一包,這包的東西配件再重新發一份給我。然後一個新的第三包裏面的配件重新發到你手裏,從而組成一輛完整的摩托車。
    通過這種方法,可以加深較爲枯燥的業務知識學習。 
  •    第二個要求:文檔更新要求——從培訓文檔中學習,並不斷的完善培訓文檔。
   怎麼才能提高新員工的學習培訓效果,提高大家的學習積極性呢?我們採用的方法是反向提出要求:要求新員工完成對課件的增補,修訂。別人寫的文檔再漂亮,你不懂腦子的看,也只能是別人會的東西。自己寫出來的,纔是真正屬於自己的知識。
    這也是希望新員工發揮自己的主動性,並在實習期內,證明自己能力,展示自己工作業績的一個方式。  
  •    第三個要求:針對新人,能動手時,儘量多動手進行實際操作,一邊看一邊學習。
    絕大部分人在學習業務知識時,都是第一次接觸這個行業,這種業務(或是第一次參加工作,或是從事其他工作)。針對這種全新知識技能的學習,絕大部分人採取單純的閱讀文檔,這種方式收到的效果很微乎甚微。
    我們不是超人,能夠通過閱讀文檔就能掌握一門語言或者業務。我們原有的學習經驗和這種業務知識的快速學習快速掌握要求也是不一樣的。很多同事已經用自己的實際證明了,單純閱讀文檔的低效,那麼我們爲什麼還要一次次的犯這個錯誤。
    所以我的建議就是:大家能動手時,儘量多動手進行操作,一邊看一邊學習。
   
    在針對這個要求的溝通上,也試圖在大家生活中尋找類似的學習方法和學習效果,讓大家來實際體會一邊閱讀一邊動手的快速性。
    例子一:學習word
    大家一開始接觸word這門課,估計沒有人先去看書,一頁頁的閱讀教材,工具欄是什麼,每個圖標的作用是什麼等等,而是會隨手輸入幾個字,然後直接每個功能點過去,特別是字體、字體特效這部分,更是玩的不亦樂乎。自己折騰了幾次後,趣味性降低,纔會拿起書,看看到底寫的什麼。 
    例子二:學習一款新遊戲或一個新的副本
    玩一個新的遊戲,也很少有人真的把鍵盤說明、操作快捷鍵先看完背下來後,再動手遊戲。大多數人是直接上手開始玩,感到自己需要什麼的時候,纔會回過頭來看幫助。
    同樣,副本和任務也是一樣,很少有人選擇靜態的看文檔攻略,看完背熟後在動手玩遊戲,大多數人會選擇邊玩邊看,走一步看一步。
 
 

2.三種思路

 
    從用戶的角度來思考:
    這個功能會滿足我的什麼需求,如果我花了買了設備,我希望這個產品的功能是什麼樣子的
    從產品設計人員、開發人員的角度來思考:
    有一個功能要我實現,根據軟件工程的常規架構,我應該怎麼做,或者應該設計成什麼樣子?
    從測試設計人員的角度來思考
    功能目前是這樣設計實現的,或者從黑盒的角度,功能有幾個參數,預期會產生什麼效果。那麼,大家從測試設計人員的角度,去思考,如果是我設計測試用例,我大致的設計思路是什麼?
 
     有可能這個行業是大家第一次接觸,甚至有可能測試工作是大家第一次接觸。但是平時日常生活中,大家用過的軟件肯定不少,比如QQ,比如BBS,比如各類遊戲,那麼,在一些面向客戶的人性化、易用性,甚至一些模糊的思考,下意識的念頭總是存在的。所以這三種思路,就是希望大家把原來那種隨機的、模糊的念頭想法,思路化和系統化,能夠快速的拓展自己的測試思考能力。
 
   例子:
   時間顯示功能:
   1、 用戶的角度:這個功能我需不需要,我要怎麼使用?
    ——在會議中可以關注會議已經進行的時間。
    ——這個類似一個電視頻道的按鍵,我需要時按一下就出來,再按一下就沒有,或者顯示一段時間,自動沒有
   2、 軟件設計人員的角度:這個功能,我要實現,應該怎麼考慮?
    ——增加定時器
    ——獲取與會時間
    ——遙控器是定性的,怎麼新增一個快捷按鍵,或者複用?
   3、 測試設計人員的角度:這個功能點,我如何設計測試思路,構建測試用例?
    ——操作的實現性,最基本的黑盒,兩個測試步驟。
    ——會議時間的準確性,召開不同時長的會議,進行功能驗證。
    ——臨時入會、不停退會的衝擊:在不同的時間段多次加入、退出,看每次的時間顯示
    ——如果有類似10秒自動消失的邏輯,進行驗證:10m內不操作,10m內不停操作等。
 

3.七種方法

  聯想擴散法
  對比記憶法
  重新描述法
  實踐操作法
  主動思考法
  測試大綱提煉法
  Bug單閱讀法
 
    聯想擴散法、重新描述法、實踐操作法,已經分解爲我們的三個要求。主動思考法已經分解爲我們的三種思路。在此,重新提出方法論,是希望大家可以從業務知識的學習中昇華出來,變成一種通用的學習方法。 
    在本章節,我們重點說一下其餘的幾種方法:對比記憶法、測試大綱提煉法、bug單閱讀法
 
    對比記憶法
    業務學習中,會存在大量的類似點。比如不同型號的產品規格等。通過對比記憶,可以通過已經掌握的知識快速的推導出新的知識。同時自己整理出對比結果,也可以讓自己的記憶理解加深,也可以使自己深入的掌握業務知識。  
  
    測試大綱提煉法
    在網絡上,測試入門的文章大多會提到這種方法:通讀測試用例,通過測試用例的通讀,掌握測試用例的設計思路。結合實際情況,所以在學習和測試階段,也是重點推薦這種方法。
 
 

  
    上圖是如何快速掌握一個業務功能點的測試方法,建議分爲兩步去進行,一是自己構建自己的測試思路,另外就是通過閱讀,執行已有的測試用例,提煉出測試用例的設計思路,兩者進行互相借鑑印證,從而不僅學習到了業務功能知識點,還能掌握業務功能點的測試設計方法。
    實際大家閱讀或執行的用例可能是細化的用例,也許很多的用例都是通過用一種設計思路設計的,如何提煉出測試用例設計思路,這點要依靠大家個人的能力以及相關經驗。
 
    Bug單閱讀法
    缺陷跟蹤庫中的問題報告單是軟件測試工程師工作績效的集中體現,同時也是軟件產品問題的集中體現。
    基本要求:
    一般來說,缺陷報告單中最關鍵的幾個部分包括:
    第一部分是發現缺陷的環境,包括軟件環境、硬件環境等;
    第二部分是缺陷的基本描述;
    第三部分是開發人員對缺陷的解決方法。
    通過對上述缺陷報告單的三個部分作仔細分析,不知不覺你已經吸收了其他軟件測試人員的工作經驗,並掌握了軟件產品常見的基本問題。這是迅速提高軟件測試經驗的好方法。
 
    擴展要求:
    根據閱讀已有的bug單,總結提交bug的描述方法和注意事項;
    根據bug單反饋的問題分佈,對軟件問題的分佈和層級有初步概念;
    根據bug單本身的深度,對測試團隊個體的工作能力和工作效率,以及開發團隊個體的工作能力和工作效率有初步瞭解。
 

4.一套完整的學習思路

     結合上文中提到個各種方法:三個要求,三種思路,七種方法。在此形成一套基準的,針對業務功能點的學習思路:
 
    

 
    最後,誠如本文分享的一樣。無論多麼好的學習方法,如果你不自己去使用,它也僅僅是一種看起來非常美妙的方法而已,而不是你自己的知識或技能。
    每個人的學習方法和習慣是不一樣的,如果真是的是主動思考的人,上述的種種方法,也僅僅是拋磚引玉而已。

 

 

敬請關注我的新浪微博@叄石而厲

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章