軟件產(chǎn)品測試自考大綱湖南省高等教育自學考試課程大綱
來源:好上學 ??時間:2025-02-25
湖南省高等教育自學考試 課 程 考 試 大 綱
軟件產(chǎn)品測試
(課程代碼:01335)
湖南省教育考試院組編
2024 年 7 月
第一部分 課程性質(zhì)與目標
一、課程性質(zhì)與特點
本課程是高等教育自學考試軟件工程(本科)專業(yè)的專業(yè)核心課程。該課程 涵蓋的內(nèi)容具有很強的理論性和實踐性,包括單元測試、集成測試、系統(tǒng)測試、 驗收測試等不同階段和層次的測試。軟件測試與軟件開發(fā)密切相關(guān),是軟件開發(fā) 生命周期的重要組成部分,核心目標是提高軟件質(zhì)量。通過本課程內(nèi)容的學習, 奠定軟件產(chǎn)品質(zhì)量、軟件測試原理和方法、軟件測試工具等方面的工程素養(yǎng)。
二、課程目標與基本要求
通過本課程的學習,熟悉軟件測試在軟件產(chǎn)品開發(fā)過程中的關(guān)鍵作用,以及 軟件測試對于提高軟件質(zhì)量和可靠性的重要性,掌握軟件測試概念、原理、技術(shù) 和方法,能夠?qū)④浖y試技術(shù)應用于軟件產(chǎn)品的開發(fā)過程中,為軟件工程素養(yǎng)的 培養(yǎng)奠定基礎(chǔ)。通過本課程的學習,應具備以下知識和能力:
1. 掌握軟件測試的基本理論、軟件測試過程和測試原則;掌握經(jīng)典的白盒測試和 黑盒測試方法;掌握軟件開發(fā)過程中的各種軟件測試方法,包括單元測試、集 成測試、系統(tǒng)測試、驗收測試等,以及相應的測試工具和框架使用;掌握面向 對象和 Web 應用的測試技術(shù);能夠規(guī)范地編寫軟件測試文檔資料;掌握常規(guī)的 自動化測試工具的框架和使用技巧。
2. 提高軟件測試計劃能力;提高軟件開發(fā)過程中的軟件測試能力;應用經(jīng)典的軟 件測試方法設(shè)計測試用例的能力;提高軟件產(chǎn)品開發(fā)過程中的缺陷分析和解決 能力;提高使用軟件測試功能的能力。
3. 重視軟件產(chǎn)品質(zhì)量,培養(yǎng)精益求精的工匠精神;建立軟件產(chǎn)品質(zhì)量導向的思維 和工作方式;提升問題解決能力、團隊合作能力和溝通能力;提升適應快速變 化的科技環(huán)境的能力,提升自主學習和持續(xù)學習的能力,提升職業(yè)競爭能力。
三、與本專業(yè)其他課程的關(guān)系
本課程與本專業(yè)的其它軟件類課程有著密切的關(guān)系,先修課程為《面向?qū)ο?程序設(shè)計》、《數(shù)據(jù)結(jié)構(gòu)》、《軟件工程》等,在已基本掌握高級程序設(shè)計語言和軟 件工程知識的基礎(chǔ)上學習本課程。
第二部分 考核內(nèi)容與考核目標
第一章 引論
一、學習目的與要求
通過本章的學習,掌握軟件測試的必要性,了解軟件測試的發(fā)展歷程和行業(yè) 現(xiàn)狀,了解軟件測試與軟件質(zhì)量、與軟件產(chǎn)品開發(fā)之間的關(guān)系,理解測試驅(qū)動開 發(fā)的思想。
二、考核知識點與考核目標
(一)軟件測試的必要性和軟件測試的定義(重點) 識記:軟件測試的定義
理解:軟件測試的必要性和重要性
(二)軟件測試與質(zhì)量保證、與軟件產(chǎn)品開發(fā)的關(guān)系(次重點) 理解:1.質(zhì)量保證
2.軟件測試與質(zhì)量保證的關(guān)系
3.軟件測試與軟件產(chǎn)品開發(fā)的關(guān)系 (三)測試驅(qū)動開發(fā)的思想。(一般)
理解:1.測試驅(qū)動開發(fā) TDD 方法
2.在軟件開發(fā)中測試先行的理念 3.敏捷方法
應用:1.測試驅(qū)動開發(fā)的思想進行軟件產(chǎn)品開發(fā) 2.測試驅(qū)動開發(fā)的思想進行代碼編寫
第二章 軟件測試的基本概念
一、學習目的與要求
通過本章的學習,掌握軟件質(zhì)量的內(nèi)涵,理解軟件測試相關(guān)的基本概念,了 解軟件測試的分類、軟件測試的不同階段,了解軟件測試工作的具體內(nèi)容和范疇。
二、考核知識點與考核目標
(一)軟件缺陷的定義,軟件缺陷的判斷準則(重點)
識記:1.軟件缺陷的定義 2. 白盒測試的定義 3.黑盒測試的定義
理解:1.軟件缺陷的測試判斷準則
2.軟件缺陷產(chǎn)生的原因
3.軟件缺陷修復的代價 (二)軟件測試的分類(次重點)
理解:1.測試的分類維度和測試類型
2.靜態(tài)測試和動態(tài)測試 3.主動測試和被動測試 4.黑盒測試和白盒測試
(三)軟件測試層次和工作范疇(一般)
理解:1.與軟件開發(fā)周期同步的軟件測試類型 2.軟件測試工作范疇相關(guān)的內(nèi)容
第三章 軟件測試方法
一、學習目的與要求
通過本章的學習,掌握常規(guī)的軟件測試方法,包括經(jīng)典的白盒測試方法和黑 盒測試方法,了解基于缺陷模式的測試,了解基于模型的測試。
二、考核知識點與考核目標
(一)典型的白盒測試方法和黑盒測試方法(重點)
識記:1.等價類劃分法 2.邊界值分析法
3.判定表法
4. 因果圖法
5.判定覆蓋法 6.條件覆蓋法
7.判定-條件覆蓋法 8.條件組合覆蓋法 9.基本路徑覆蓋法
理解:1.錯誤推測法
2.Pairwise 測試法
應用:1.黑盒測試方法 2. 白盒測試方法
(二)基于直覺和經(jīng)驗的方法(次重點)
理解:1. 自由測試法(Ad-hoc 測試法) 2.客戶測試法(ALAC 測試法)
(三)常見的缺陷模式和基于模型的測試(一般) 理解:1.常見的缺陷模式
2.功能圖法
3.模糊測試法
應用:功能圖法設(shè)計測試用例
第四章 軟件測試流程和規(guī)范
一、學習目的與要求
通過本章的學習,掌握貫穿軟件生命周期的軟件測試過程,了解敏捷測試過 程,了解軟件測試相關(guān)的規(guī)范。
二、考核知識點與考核目標
(一)軟件測試過程(重點)
識記:軟件測試過程的 W 模型
理解:測試管理方法 TMap
(二)敏捷測試過程(次重點)
理解:1.敏捷測試的價值觀和原則
2.敏捷測試與傳統(tǒng)測試的區(qū)別 3.敏捷測試流程
(三)軟件測試過程改進和軟件測試規(guī)范(一般) 理解:1.軟件能力成熟度模型 CMM
2.個體軟件過程 PSP
3. 團隊軟件過程 TSP
4.測試成熟度模型 TMM 5.測試過程改進 TPI
6.關(guān)鍵測試過程 CTP
7.軟件測試規(guī)范相關(guān)內(nèi)容
第五章 單元測試和集成測試
一、學習目的與要求
通過本章的學習,掌握單元測試的內(nèi)容和方法,掌握常用的單元測試工具使 用技巧,掌握集成測試的模式和方法,能根據(jù)實際需求選擇合適的集成測試模式 和方法。
二、考核知識點與考核目標
(一)單元測試的常用方法和工具,集成測試的模式(重點) 理解:1.代碼靜態(tài)測試
2.代碼評審錯誤類型
3.單體結(jié)構(gòu)的集成測試 應用:JUnit 單元測試工具
(二)代碼靜態(tài)測試工具,單元測試的目標和任務(次重點) 理解:1.單元測試的必要性
2.單元測試的目標和要求
3.單元測試的任務
4.驅(qū)動程序和樁程序 5.類測試
應用:1.FindBugs 檢查代碼缺陷 2.PMD 檢查代碼缺陷
(三)分層單元測試和集成測試模式(一般) 理解:1.Actions 層的單元測試
2.數(shù)據(jù)訪問層的單元測試
3.Servlet 的單元測試
4.微服務架構(gòu)的集成測試 5.持續(xù)集成及其測試
第六章 系統(tǒng)功能測試
一、學習目的與要求
通過本章的學習,掌握系統(tǒng)測試中功能測試的思路和方法,了解功能自動化 測試途徑和方法,了解回歸測試的相關(guān)內(nèi)容。
二、考核知識點與考核目標
(一)系統(tǒng)功能測試的常用方法(重點) 理解:1 功能測試的含義
2.面向接口的功能測試的含義 3.面向 UI 的功能測試的含義
(二)功能測試的自動化及相關(guān)工具(次重點) 理解:1.基于接口的自動化測試的含義
2.Web 客戶端的 UI 自動化測試基本框架 3.Android 應用的 UI 自動化測試基本框架 4.iOS 應用的 UI 自動化測試基本框架
應用:1.常用的開源測試工具 Postman 進行自動化測試 2.Selenium WebDriver 進行 Web 應用測試
(三)回歸測試(一般)
理解:1. 回歸測試的含義和目的
2. 回歸測試的策略和常用的回歸測試方法
第七章 專項測試
一、學習目的與要求
通過本章的學習,了解系統(tǒng)測試中非功能測試相關(guān)內(nèi)容,掌握性能測試、安 全測試、兼容測試、可靠性測試和易用測試的內(nèi)涵。
二、考核知識點與考核目標
(一)性能測試的內(nèi)容和主要方法(重點) 識記:1.主要的系統(tǒng)性能指標和定義
2.系統(tǒng)負載的含義
理解:1.性能測試的主要類型
2.系統(tǒng)負載的含義和計算方法
3.性能測試的基本過程和具體執(zhí)行步驟
4.如何進行性能測試結(jié)果分析及其重要參數(shù) 5.Web 性能測試的主要內(nèi)容
6.壓力測試和容量測試的含義
(二)其他非功能測試的主要類型(次重點)
理解:1.安全性測試的含義 2.兼容性測試的含義 3.可靠性測試的含義 4. 易用性測試的含義
(三)常用的性能測試工具(一般)
應用:1.LoadRunner 對軟件進行性能測試和測試結(jié)果分析
2. ApacheBench 對 HTTP Server 進行性能測試和結(jié)果分析
第八章 軟件本地化測試
一、學習目的與要求
通過本章的學習,掌握軟件本地化測試的內(nèi)涵,理解本地化測試涉及的技術(shù) 問題,了解軟件本地化的功能測試。
二、考核知識點與考核目標
(一)軟件本地化測試的技術(shù)問題(重點) 理解:1.數(shù)據(jù)格式問題
2.頁面顯示和布局問題 3.配置和兼容性問題
4.技術(shù)問題對于本地化測試的影響。
(二)軟件本地化的意義和內(nèi)涵(次重點) 理解:1.軟件本地化的定義
2.軟件本地化與國際化的關(guān)系
3.軟件本地化的內(nèi)容和基本步驟 (三)軟件本地化的功能測試內(nèi)涵(一般)
理解:軟件本地化功能測試的注意事項
第九章 測試自動化及其框架
一、學習目的與要求
通過本章的學習,掌握軟件自動化測試的內(nèi)涵和實現(xiàn)原理,理解測試自動化 測試框架,了解 Web 應用和移動應用的自動化測試框架。
二、考核知識點與考核目標
(一)軟件測試自動化的內(nèi)涵和實現(xiàn)原理(重點) 識記:測試自動化的定義和必要性
理解:1. 自動化的代碼分析和常用代碼分析工具 2.腳本技術(shù)的含義和主要類型
3.頁面對象識別的含義和常用方式
4.API 測試內(nèi)容和測試步驟
5. 自動比較、驗證、斷言的含義
(二)API 和移動應用的自動化測試框架和主流測試工具(次重點) 理解:1.API 自動化測試框架的含義和常用API 測試工具
2.移動應用的自動化測試的構(gòu)成和實現(xiàn)方式 應用:1.開源測試工具 Karate 實現(xiàn) API 測試
2. 自動化測試工具 Appium對手機 APP 或 Web 應用程序進行測試
(三)軟件測試自動化的基本結(jié)構(gòu)和實施方法(一般)
理解:1.測試自動化的基本結(jié)構(gòu)
2.測試工具的分類和選擇
3.測試框架的構(gòu)成和類型
4. 自動化測試的金字塔模型
第十章 測試需求分析與測試計劃
一、學習目的與要求
通過本章的學習,掌握軟件測試需求分析的基本工作,明確測試的范圍和測 試項,理解測試計劃的制定內(nèi)容。
二、考核知識點與考核目標
(一)軟件測試需求分析的內(nèi)涵和基本的需求分析方法(重點)
識記:軟件測試需求分析的內(nèi)涵 理解:1.確定測試目標的內(nèi)涵
2.軟件測試項目的進入準則
3.軟件測試需求分析的基本出發(fā)點和方法
4.功能測試范圍和非功能性測試范圍的分析 (二)測試風險的管理和測試策略的確定(次重點)
理解:1.軟件測試項目中的風險的含義
2.風險管理的內(nèi)容和風險控制策略 3.基于風險的測試的含義
4.測試策略的內(nèi)涵和確定過程
第十一章 設(shè)計和維護測試用例
一、學習目的與要求
通過本章的學習,掌握軟件測試用例的設(shè)計思想,測試用例的組成元素,測 試用例編寫時需要遵循的基本原則,了解測試用例的跟蹤和維護過程。
二、考核知識點與考核目標
(一)軟件測試用例的定義和必要性,測試用例的設(shè)計要素(重點) 識記:測試用例的定義和必要性
理解:1.測試用例包含的主要元素
2.測試用例設(shè)計時需要考慮的基本因素 3.什么是測試用例設(shè)計的基本原則
(二)軟件測試用例覆蓋率的基本定義和計算方法(重點) 識記:1.測試用例覆蓋率的定義和意義
2.測試用例覆蓋率的計算公式
(三)測試用例的組織、跟蹤和維護(次重點)
理解:1.不同測試階段測試用例表現(xiàn)的屬性 2.測試套件的含義
3.組織測試用例的基本策略
4.測試用例跟蹤的內(nèi)容,以及測試用例跟蹤的方法
5.測試用例維護的內(nèi)容,以及測試用例維護的基本流程
第十二章 部署測試基礎(chǔ)設(shè)施
一、學習目的與要求
通過本章的學習,掌握軟件測試環(huán)境部署包含的內(nèi)容。
二、考核知識點與考核目標
(一)軟件測試基礎(chǔ)設(shè)施的重要性和部署內(nèi)容(次重點) 理解:1.軟件測試基礎(chǔ)設(shè)施的內(nèi)容
2.軟件測試運行環(huán)境包含的內(nèi)容
3.云計算下軟件測試基礎(chǔ)設(shè)施的要素 (二)軟件測試基礎(chǔ)設(shè)施的自動部署(一般)
理解:“基礎(chǔ)設(shè)施即代碼 ”的內(nèi)涵和對應的典型自動化部署工具
第十三章 測試執(zhí)行與結(jié)果評估、報告
一、學習目的與要求
通過本章的學習,掌握不同測試階段軟件測試執(zhí)行的內(nèi)容,經(jīng)典的軟件測試 項目進度跟蹤的管理方法,理解軟件缺陷的含義,掌握正確地描述軟件缺陷的方 法,測試結(jié)果評估的內(nèi)容,以及測試報告的組織結(jié)構(gòu)。
二、考核知識點與考核目標
(一)軟件測試執(zhí)行的內(nèi)容和項目進度管理方法(次重點) 理解:1.不同測試階段測試執(zhí)行的要點內(nèi)容
2.測試項目進度跟蹤的兩種管理方法:測試進度 S 曲線法和缺陷跟蹤 曲線法
(二)軟件缺陷的定義、生命周期和軟件缺陷的描述(重點) 識記:軟件缺陷的定義
理解:1.正確地描述軟件缺陷的益處
2.基本的軟件缺陷生命周期為:發(fā)現(xiàn)→打開→修改→關(guān)閉
3.常用的軟件缺陷嚴重性級別為:致命的、嚴重的、一般的和微小的 4.好的軟件缺陷描述的基本要求
(三)軟件測試的評估包含的內(nèi)容與報告(重點)
理解:1.不同的測試階段對應的軟件測試評估方法和內(nèi)容 2.測試覆蓋率是測試結(jié)果分析的重要指標
3.測試報告包含的基本內(nèi)容
第十四章 軟件測試展望
一、學習目的與要求
通過本章的學習,了解人工智能時代不同應用系統(tǒng)的測試工作需要的測試方 法、測試技術(shù)和測試工具,人工智能技術(shù)為軟件測試做出的貢獻,以及未來軟件 測試工具的發(fā)展。
二、考核知識點與考核目標
(一)新型應用系統(tǒng)的測試技術(shù)所包含的內(nèi)容(一般) 理解:1.大數(shù)據(jù)的測試特性和測試方法
2.AI 系統(tǒng)測試的特點和 AI 算法需要驗證的重要指標 3.AI 為軟件測試帶來的益處
4.智能時代軟件測試工具未來的發(fā)展趨勢
第三部分 有關(guān)說明與實施要求
一、考核的能力層次表述
本大綱在考核目標中,按照“識記 ”、“理解 ”、“應用 ”三個能力層次規(guī) 定其應達到的能力層次要求。各能力層次為遞進等級關(guān)系,后者必須建立在前者 的基礎(chǔ)上,其含義是:
識記:能知道有關(guān)的名詞、概念、知識的含義,并能正確認識和表述,是低層 次的要求。
理解:在識記的基礎(chǔ)上,能全面把握基本概念、基本原理、基本方法,能掌握 有關(guān)概念、原理、方法的區(qū)別與聯(lián)系,是較高層次的要求。
應用:在理解的基礎(chǔ)上,能運用基本概念、基本原理、基本方法聯(lián)系學過的多 個知識點分析和解決有關(guān)的理論問題和實際問題,是最高層次的要求。
二、教材
1 .指定教材
軟件測試方法和技術(shù)(第 4 版) ,朱少民(主編),清華大學出版社,2019 年 第 4 版。
2 .參考教材
軟件測試的藝術(shù)(原書第 3 版),梅耶(主編),機械工業(yè)出版社,2012 年 第 3 版。
軟件測試技術(shù)(第 2 版),曲朝陽(主編),清華大學出版社,2015 年第 2 版。
三、自學方法指導
1 .在開始閱讀指定教材某一章之前,先翻閱大綱中有關(guān)這一章的考核知識點 及對知識點的能力層次要求和考核目標,以便在閱讀教材時做到心中有數(shù),有的 放矢。
2 .閱讀教材時,要逐段細讀,逐句推敲,集中精力,吃透每一個知識點,對 基本概念必須深刻理解,對基本理論必須徹底弄清,對基本方法必須牢固掌握。
3.在自學過程中,既要思考問題,也要做好閱讀筆記,把教材中的基本概念、 原理、方法等加以整理,這可從中加深對問題的認知、理解和記憶,以利于突出 重點,并涵蓋整個內(nèi)容,可以不斷提高自學能力。
4 .完成書后作業(yè)和適當?shù)妮o導練習是理解、消化和鞏固所學知識,培養(yǎng)分析 問題、解決問題及提高能力的重要環(huán)節(jié),在做練習之前,應認真閱讀教材,按考 核目標所要求的不同層次,掌握教材內(nèi)容,在練習過程中對所學知識進行合理的 回顧與發(fā)揮,注重理論聯(lián)系實際和具體問題具體分析,解題時應注意培養(yǎng)邏輯性, 針對問題圍繞相關(guān)知識點進行層次(步驟)分明的論述或推導,明確各層次(步 驟)間的邏輯關(guān)系。
四、對社會助學的要求
1 .應熟知考試大綱對課程提出的總要求和各章的知識點。
2 .應掌握各知識點要求達到的能力層次,并深刻理解對各知識點的考核目標。
3 .輔導時,應以考試大綱為依據(jù),指定的教材為基礎(chǔ),不要隨意增刪內(nèi)容, 以免與大綱脫節(jié)。
4.輔導時,應對學習方法進行指導,宜提倡“認真閱讀教材,刻苦鉆研教材, 主動爭取幫助,依靠自己學通 ”的方法。
5 .輔導時,要注意突出重點,對考生提出的問題,不要有問即答,要積極啟 發(fā)引導。
6.注意對考生能力的培養(yǎng),特別是自學能力的培養(yǎng),要引導考生逐步學會獨 立學習,在自學過程中善于提出問題,分析問題,做出判斷,解決問題。
7.要使考生了解試題的難易與能力層次高低兩者不完全是一回事,在各個能 力層次中會存在著不同難度的試題。
8.助學學時:本課程共 6 學分,建議總課時 108 學時,其中助學課時分配如 下:
五、關(guān)于命題考試的若干規(guī)定
1.本大綱各章所提到的內(nèi)容和考核目標都是考試內(nèi)容。試題覆蓋到章,適當 突出重點。
2 .試卷中對不同能力層次的試題比例大致是:“識記 ”為 40 % 、“理解 ”為 40% 、“應用 ”為 20 %。
3 .試題難易程度應合理:容易、中等、難比例為 3 :4 :3。
4.每份試卷中,各類考核點所占比例約為:重點占 60% ,次重點占 30% ,一 般占 10%。
5 .試題類型一般分為:單項選擇題、多項選擇題、簡答題、綜合應用題。
6 .考試采用閉卷筆試,考試時間 150 分鐘,采用百分制評分,60 分合格。
六、題型示例(樣題)
一、單項選擇題(本大題共■小題,每小題■分,共■分)
在每小題列出的四個備選項中只有一個是符合題目要求的,請將其選出并將“答題卡”上的 相應字母涂黑。錯涂、多涂或未涂均無分。
1 .根據(jù)程序輸出對輸入的依賴關(guān)系而設(shè)計測試用例的方法是
A. 路徑測試 B .等價類 C .因果圖 D .歸納測試
二、多項選擇題(本大題共■小題,每小題■分,共■分)
在每小題列出的五個備選項中至少有兩個是符合題目要求的,請將其選出并將“答題卡” 上的相應字母涂黑。錯涂、多涂、少涂或未涂均無分。
1 .軟件測試類型按照軟件開發(fā)階段劃分包括
A .需求測試 B .單元測試 C .集成測試
D .系統(tǒng)測試 E .驗收測試
三、簡答題(本大題共■小題,每小題■分,共■分)
1 .為什么要進行軟件測試?
四、綜合應用題(本大題共■小題,每小題■分,共■分)
1 .請應用判定覆蓋法為下面的程序設(shè)計測試用例。
double Cmpe()
{
int a, b; double c;
if(a>0 && b>0) then
c=c/a;
if(a>1 || c>1) then
c=c+1;
return c=b+c;
}