原始出處:本地化世界網http://www.giltworld.com
1. 引言
軟體測試成為最近 IT 行業的“香餑餑”,引得很多人對軟體測試躍躍欲試。可是軟體測試的門檻並不低,對於沒有軟體測試經驗的新人而言,如何儘快轉入測試工作中去呢?
瞭解軟體測試都做些什麼,具體過程是怎麼進行的,可以有助於對軟體測試進行初步瞭解,儘快進入測試工作角色。但是關於軟體測試的工作流程,各種現有書籍和文章往往都描述的非常複雜,充斥著不少測試術語,使測試初學者望而生畏。
現在讓我們換一種角度看看典型的軟體測試是如何進行的,暫且把軟體測試過程看作一場大戲,主角就是測試工程師,按照時間順序記錄軟體測試工程師一天的工作情境(假設正常工作時間 9:00 到 18:00 )。
2. 測試大戲開演
時間: 9:00
工作情境:
畫外音:
- 查看收到的電子郵件(哇塞,這麼多電子郵件!),理解當天的測試工作的內容和要求。
- 測試工程師至少配置兩台電腦:其中一台是日常工作用,例如,收發電子郵件等。另外還有一台軟體測試用的電腦。
時間: 9:10
工作情境:
畫外音:
- 回複電子郵件。如果對於安排的測試工作和要求存在任何疑問,請在回複電子郵件時列舉出來。如果任務明確,回信中可以簡單的說明理解測試工作了,按照測試工作要求進行測試。(正好今天有一封電子郵件分配了測試工作 A ,而且任務明確,測試文檔等完整。)
- 電子郵件有不同的優先順序,任務非常緊迫的電子郵件應該優先處理,儘快回複。(面對多封郵件保持鎮定,分清哪些郵件需要馬上回複)
- 並非全部的電子郵件都需要回複(抄送給自己的郵件和一般通告等不需要回複)
時間: 9:25
工作情境:
- 啟動用於測試的電腦
- 根據測試要求配置作業系統、安裝要測試的軟體
- 根據測試案例執行測試工作 A 。
畫外音:
- 測試一般需要按照測試指導文檔和測試案例進行。(軟體測試可不是盲目的亂測一氣的呀!)
- 很多軟體的測試要求在一個“乾淨”的電腦上測試(提示:幹靜的電腦是僅安裝了作業系統,沒有安裝其他應用程式的電腦)。
- 在進行正式測試前,需要閱讀測試文檔,明確測試工作(這些測試文檔你找到了嗎?是最新的測試文檔嗎?)。
時間: 11:00
工作情境:
畫外音:
- 按照測試要求,盡量多找出軟體的 Bug 。(什麼破軟體,能找出這麼多 Bug ! 反過來想,軟體如果沒有 Bug ,我們測試工程師不就失業了嗎!)
- 根據發現的軟體 Bug ,按照客戶要求寫出每個 Bug 的報告(要書寫明白,否則客戶事後會要求你重寫,很費時間,也影響公司的測試品質,是否很沒有面子?)
時間: 11:30
工作情境:
畫外音:
- 如果測試案例的步驟不明確或者測試的軟體不能成功安裝,無法進行下面的測試,應該及時向測試負責人報告,等待回覆後進行測試。(重大問題,切莫瞞報,也別主觀想當然地猜測!)
- 如果某些測試步驟不明確,但是可以暫時跳過,請向測試負責人報告,並且繼續進行下面的測試。(靈活處理,合理利用時間,時間就是金錢!)
時間: 12:00
工作情境:
- 查收和回複新郵件,新郵件又來了一個新的測試工作 B ,而且要求緊急處理。
- 暫停測試工作 A ,進行測試工作 B 。
畫外音:
- 測試過程中,要主要定時查看是否有新郵件,特別是那些要求非常緊急的任務。(重要任務一定要優先處理,否則就是工作失職)
- 如果新任務比較緊急,應該中斷當前的測試,接著執行新任務。(為什麼計劃總是沒有變化快,可是現實就是這樣。)
時間: 12:30
工作情境:
畫外音:
- 陽光、午餐、休息,美!(禁止在辦公室玩任何電子遊戲,辦公室不是娛樂場所!)
時間: 13:30
工作情境:
畫外音:
時間: 14:30
工作情境:
- 完成新任務 B ,向測試負責人提交任務 B 的測試結果
畫外音:
- 完成任何任務後,需要向測試負責人發送任務完成的電子郵件。(這一點很重要的,否則你做的工作再多,測試負責人也不一定很清楚)
- 提交任務的電子郵件中,應該寫明任務是否全部完成,存在什麼問題,測試結果存放在什麼電腦的哪個目錄中。(想象測試負責人需要你提交哪些內容,最好在一封信中交待明白,完整,清楚,條理分明)
時間: 14:40
工作情境:
畫外音:
- 由於執行了新測試工作 B ,使得測試工作 A 不能按時完成,應該及早向測試負責人寄送電子郵件。(如果你不主動說無法按時完成任務 A ,測試負責人就預設為你能夠按時完成。而如果到了完成任務的期限,而你突然向測試負責人說任務還沒有完成,那麼我可以很負責任地告訴你:測試負責人將會很生氣,後果很嚴重!)
- 得到測試負責人的回覆後,繼續執行測試工作 A 。
- 如果客戶要求必須當天完成測試工作 A ,可能要做好加班準備(苦惱 … )。或者請測試負責人將一部分任務分解給其他測試人員執行(呵呵,謝謝兄弟們拉我一把 ... )。
時間: 14:50
工作情境:
畫外音:
- 尋找軟體 Bug (這是主要任務之一)
- 書寫 Bug 測試報告(這也是主要任務之一)
時間: 15:30
工作情境:
畫外音:
- 沒有新電子郵件,呵呵!(最不喜歡在測試工作中,經常有郵件來騷擾!)
- 繼續執行測試工作 A 。
時間: 17:00
工作情境:
畫外音:
- 經常在測試過程中,測試小組內部會召開短暫的會議。(交流很重要的,傾聽和發言一個都不能少)
- 會議內容一般是測試過程中遇到的問題,以及可能的解決辦法,也包括測試進度是否與測試計劃保持一致。
時間: 17:30
工作情境:
畫外音:
- 當天任務完成情況的報告應該在下班前儘早發送給測試負責人,以便得到及時回複。
- 總結當天測試工作完成的情況(全部完成還是部分完成)
- 測試遇到的需要測試負責人或者問題客戶協助解決的問題(遇到問題一定要反映,不要什麼問題都自己扛!)
- 給出當天處理 Bug 的數量、類型和存放位置(確保測試負責人能很容易的找到這些測試結果嗎?)
時間: 17:45
工作情境:
畫外音:
- 備份當天的測試結果(有備無患!)
- 總結測試遇到的問題和學習的新知識(好好學習,天天向上!)
- 準備第二天的測試工作(未雨綢繆)
時間: 18:00
工作情境:
畫外音:
3. 測試大戲背後的故事
上面的測試情境描述基本上反映了軟體測試工程師的工作情形,但是由於測試工作的複雜性、瑣碎性、變化性,實際測試過程將是不斷變化的。
• 測試的變化性
對於軟體本地化等外包測試,測試過程和測試要求因不同客戶而異,即使相同客戶的不同項目,也會有些變化。另外,測試所用的測試計劃、測試案例、測試 Build 版本經常變化。這是對測試工程師需要面對和正確處理的工作挑戰。
• 多任務同時處理
軟體測試工程師在一天的工作時間裡,可能需要做多件事情(例如,測試負責人可能中間會安排新的任務),正常測試過程經常被中斷,對此需要有相應的心理準備。
• 及時交流
測試過程很少是一帆風順的,特別是不熟悉的新軟體,或者測試案例沒有表達清楚。這時除了自己學習和思考,還需要向測試組的其他同事請教。如果問題仍然沒有解決,請及時向測試負責人反映情況,尋求協助(提示:測試負責人積累了軟體測試經驗,一般問題都可以搞定,但是測試負責人也不是萬能的,他們也有很多不能解決的問題,但是他們有“殺手鐧” — 向客戶的測試負責人尋求協助,由於源語言是客戶開發的,客戶才是萬能的!)。
• 電子郵件是主要的交流方式
測試過程不要一味地在測試電腦上做下去,要經常在日常工作用電腦查看和回複電子郵件,以免耽誤了更重要的任務。除了電子郵件之外,也可以打電話和即時網路交流工具( MSN 等),或者面對面與同事交流(提示:對於複雜的問題,與其來回傳送多封電子郵件還說不明白,還不如打個電話或者面對面交談更有效)。
4. 結束語
有人說,測試很枯燥,而且“一點技術含量都沒有”。也有人說,軟體測試大有前途!現在中國確的不是軟體編程大師,而是軟體測試大師。這些觀點孰是孰非,您請自己琢磨。不過既然從事了測試行業,還是將它做好為上!