2012年11月4日 星期日

贏在測試-曹向志 摘要

軟體測試經驗的體會:
1.做事要認真,有耐心。當時大家的學習熱情都很高,如學習程式設計語言、學習硬體及業務知識。
2.測試要注意變換思考的角度。當時我們大概測試10輪左右,如果不轉變思考的角度,越到後面就越發現不了問題,因為思維已經形成了定勢。
3.當時因為使用的是編譯,進行白箱測試,使我對作業系統、語言本身都有了深入了解,這位我以後的工作打下的堅實的基礎。

作為一名軟體測試工程師,知識面應該更加寬廣,這樣才有利於測試工作。

教材編寫的流程:
1.確定教材編寫規劃
2.編寫具體的某一本教材的大鋼
3.大綱評審
4.編寫PPT
5.試講
6.改進,通過後開始編寫教材正文
7.課程評審
8.校對
9.編寫任課老師使用的教案
10.出版

如何做好專案管理:
1. 要做好時間管理
2. 要做好品質控制
3. 要有良好的溝通能力
4. 要做好風險管理

測試 vs. QA
QA主要負責品質確認、審計,控制研發過程和測試的品質。可以用一句簡單的話總結:測試是對階段成果品質把關,而QA應該是對過程品質把關。

外包測試團隊執行專案的主要流程和做法:
1. 學習軟體需求
先派出骨幹人員,跟蹤軟體需求的形成過程,對需求文件進行審查,嘗試找出需求中的問題,以促進需求的完整性、正確性和可測試性。
2. 提取測試需求
要把業務需求轉換成測試需求,這一步是很重要的。有了測試需求,我們就知道測試要做什麼工作。
3. 設計測試案例
用幾個測試案例來驗證一個測試需求。透過一個管理工具,我們把測試需求和測試官連起來,從而方便查看和評審。
4. 作評審(Review)
測試需求和測試案例評審,根據評審意見,進行相應的改進。
5. 煙霧測試(Smoke Testing)
指驗證軟體是否符合測試執行入口標準(1~2天)。通過標準是,其功能要90%都工作正常。標準要在前期各方討論確定。如果不進行煙霧測試,很難判斷軟體功能完成情況,將來很可能導致測試和研發交叉在一起,很難分清楚到底是開發方的問題還是測試方的問題。
6. 整合測試
這個階段的重點是測試個子系統的介面,整合測試週期比較短,基本上每週進行一輪(有時3~4天就一輪)。此階段主要是要看整個系統相關子系統介面是否正常工作,資料能否正常地輸入/輸出,並不驗證功能的正確性。
7. 功能測試
測試工作中最重要的是在整合測試階段活動的基礎上,進行更深入和更全面的測試(包含正常、異常的情況、帳務、介面等)。因為是全面的測試系統,所以每一輪週期要10多個工作日,但隨著熟悉程度的增加,會進行的愈來愈快。
8. 統計分析
對測試工作中的各種資料(包含測試需求數、測試案例數、bug發現/修復數、缺陷原因、投入工作量等)進行統計,這會外包測試更重要,因為客戶也希望看到量化的測試結果。
9. 性能測試
理論上可以和功能測試並行,但通常都會稍晚一點啟動。性能測試有三個重點:
a. 設計性能測試場景
b. 確定性能測試設備(需客戶去商量及準備)
c. 構建歷史資料/基礎資料(可透過寫一些儲存過程或借助一些工具產生)來測試3~5年後的性能表現
10. 測試報告
整理匯總各種測試資料,編寫測試報告,並做好測試報告的評審準備。
11. 接受度測試
專案測試和公司軟體產品測試是有一定差別的,專案是定制的,產品是通用的,要求不一樣。專案測試,與專案有關的連絡人的溝通要多一些;而進行產品測試,與內部的溝通要多一些,且這種溝通中阻礙和問題也比較少。


沒有留言:

張貼留言