關於基礎理論一二三,都已經從新整理更新到了基礎知識總結,傳送門:http://www.cnblogs.com/imyalost/p/6144862.htmlhtml
一、什麼是軟件編程
定義:計算機系統中與硬件相互依存的一部分(程序+數據+相關文檔)數據結構
程序:按事先設計的功能和性能要求執行的指令序列框架
數據:使程序能正常操縱信息的數據結構運維
文檔:與程序開發、維護和使用有關的圖文資料工具
二、軟件的生命週期性能
可行性研究和計劃、需求分析、概要設計、詳細設計、實現(開發階段)、單元測試
組裝測試、確認測試、使用和維護測試
三、什麼是軟件測試編碼
定義:軟件質量保證的一種手段
目的:發現錯誤以及避免這些錯誤的發生
四、軟件測試的方法
1)用試題檢查法
2)用新舊兩個系統作平行處理檢查
3)軟件測試自動化工具測試
五、軟件測試有哪幾個階段(任務)
1)制定測試大綱(測試計劃)
2)製做測試數據(測試方案)
3)單元測試(程序測試,通常由開發人員進行)
4)功能測試/性能測試(這兩個階段重合性較大,能夠歸爲一類)
5)集成測試(子系統測試)
6)系統測試
7)驗收測試
8)測試報告
9)向下階段提交系統運行、維護用戶手冊
備註:能夠分爲產品→開發→測試→運維
六、軟件測試工做流程圖
立項階段→需求階段→設計階段→編碼&單元測試階段→集成測試階段→系統測試階段→驗收測試階段→結項總結階段
七、自動化測試的優勢
提升工做效率,減小人的手工勞動,節省時間和成本
八、自動化測試的過程
需求分析→測試計劃→框架搭建→測試—調試測試→評估
九、自動化測試的優勢
1)能執行更多更頻繁的測試, 使某些測試任務執行方式更高效
2)能執行一些手動測試困難或者不能作的測試
3)任務自動化,使測試人員投入更多精力設計測試用例,提升測試準確性和人員積極性
4)具備一致和可重複性特色,更客觀,提升軟件信任度,仍存在必定侷限
5)不能取代手工測試,不能自動化全部的測試(如只是偶爾執行測試,或需求常常變更,不穩定,或者須要大量手工參與時)
6)自動化測試工具只能執行命令,而手工能夠在測試中判斷測試的輸入是否正確,以及改進測試,還可處理意外事件
7)對質量依賴較大,在確保質量的前提下,實施自動化纔有意義
8)自動化測試須要在整個測試系統成熟穩定後,工做效率纔會隨着測試執行次數的增長而提升
9)自動化測試的成本可能高於手工測試
十、自動化測試技術
錄製/回放、腳本技術、數據驅動(data driven)、關鍵字驅動(keyworddriven)、業務驅動
十一、自動化測試的級別
1)捕獲和回放
2)捕獲、編程和回放
3)編程和回放
4)數據驅動的測試
5)使用動做詞的測試自動化
十二、自動化測試方案選擇須要考慮的方面
1)項目的影響(可否幫助項目進度、覆蓋率、風險)
2)複雜度(是否容易實現,包括數據和其餘環境等)
3)時間(實現自動化須要多少時間)
4)早期需求和代碼的穩定性
5)維護工做量(代碼可否能長期保持相對穩定)
6)覆蓋率
7)資源(是否擁有足夠的人力、硬件和數據資源來運行自動化測試)
8)執行(負責執行的人員是否有足夠的技能和時間去運行)
1三、自動化測試的重點
1)搭建測試環境,測試場景
2)測試用例
3)測試結果的驗證
4)自動化測試的流程以及執行
1四、自動化測試須要解決的問題
一、工具的選擇
二、測試用例腳本編寫
三、測試腳本的管理