1.計算機軟件的分類
1.1 按層次分類
→系統軟件
→支持軟件
→應用軟件
1.2 按結構划分
→單機軟件
→分布式軟件
→C/S B/S
2.軟件中的BUG
2.1 Bug的含義
Bug -- 泛指蟲子,來表示軟硬件中的error(錯誤).bug是一個英文單詞,本意是臭蟲、缺陷、損壞、犯貧、小蟲等意思。現在人們將在電腦系統或程序中,隱藏着的一些未被發現的缺陷或問題統稱為bug(漏洞)。由於現代社會的發展,bug另有一種引申意義,用來形容某事物厲害的超乎想象,BUG可以使電腦系統崩潰、容易被施詐者攻擊,現有修復漏洞的工具。
2.2 Defect
軟件缺陷,常常又被叫做Bug.所謂軟件缺陷,即為計算機軟件或程序中存在的某種破壞正常運行能力的問題、錯誤,或者隱藏的功能缺陷。缺陷的存在會導致軟件產品在某種程度上不能滿足用戶的需要。IEEE729-1983對缺陷有一個標准的定義:從產品內部看,缺陷是軟件產品開發或維護過程中存在的錯誤、毛病等各種問題;從產品外部看,缺陷是系統所需要實現的某種功能的失效或違背。在軟件開發生命周期的后期,修復檢測到的軟件錯誤的成本較高。沒有不存在的缺陷的軟件只有至今沒有發現的缺陷。
3.軟件測試
3.1 軟件測試的發展歷史

軟件測試工程師(Software Testing Engineer)指理解產品的功能要求,並對其進行測試,檢查軟件有沒有錯誤(Bug),決定軟件是否具有穩定性(Robustness),寫出相應的測試規范和測試用例的專門工作人員。簡而言之,軟件測試 工程師在一家軟件企業中擔當的是“質量管理”角色,及時糾錯及時更正,確保產品的正常運作。由於工作的特殊性,測試人員不但需要對軟件的質量進行檢測,而且對於軟件項目的立項、管理、售前、售后的等領域都要涉及。按其級別和職位的不同,分為初級、中級、高級三類。
3.2 軟件測試的正反向思維

3.3 測試的定義

3.3 軟件測試的目的

軟件測試僅僅只是軟件質量保證重要手段之一,想要真正的提高軟件產品的質量,需要通過持續不斷的過程改進。
3.4 測試和調試的區別

3.5軟件的定義
→ 程序
→ 數據
→ 文檔
軟件測試貫穿於整個軟件生命周期中
→ 單元測試
→ 集成測試
→ 確認測試
→ 系統測試
→ 驗收測試
3.6軟件缺陷案例

3.7 對軟件測試的誤解
→ 如果發布的軟件質量有問題,那是軟件測試人員的錯
→ 軟件測試技術要求不高,至少比編程容易多了
→ 有時間就多測一些,來不及就少測一些
→ 軟件測試是測試人員的事,與開發人員無關
3.7軟件測試從業人員的職業要求
→ 善於說服
→ 不放過蛛絲馬跡
→ 具有創造性
→ 是問題的發現者
→ 是完美追求者
→ 有很好的洞察力
→ 幽默的
→ 善於學習
