軟件測試術語一(A-C) 軟件測試
此術語表為國際軟件測試認證委員會(ISTQB)發布的標準術語表。此表歷經數次修改、完善,集納了計算機行業界、商業界及政府相關機構的見解及意見,在國際化的層面上達到了罕有的統一性及一致性。參與編制此表的國際團體包括澳大利亞、比利時、芬蘭、德國、印度、以色列、荷蘭、挪威、葡萄牙、瑞典、英國和美國。多數軟件測試工程師使用1998年發布的BS 7925-1標準。英國信息系統考試委員會(ISEB)也以此標準作為基礎級別和從業級別認證的首要參考標準。BS 7925-1標準最初是圍繞著單元測試撰寫的,自發布之后許多旨在改進和擴展此標準,以覆蓋更廣義范圍的軟件測試領域的新概念和提議不斷涌現。最新版的BS 7925-1標準中的軟件測試詞匯吸納、融合了上述概念和提議。此國際軟件測試認證委員會(ISTQB)發布的標準術語表即是以最新版的BS 7925-1標準為基礎制定的國際化軟件測試標準術語。
1. 簡介
行業界、商業界、政府及學術機構曾經花費大量精力和時間以解釋和區分一些常見的軟件測試專業術語以期在各社會部門或機構之間達成交流,例如:語句覆蓋(statement coverage) 和判定覆蓋(decision overage); 測試套件(test suite)、 測試規格說明(test specification)和測試計劃(test plan)等。上述機構與專職機構定義的同名術語在含義上又往往有很大偏差。
2.范疇
本文檔旨在提供概念、條款、和定義為軟件測試及相關從業人員進行有效交流的平臺。
3.結構
術語表中的詞匯按字母順序排列。術語如有同義詞匯,本術語表解釋最通用的詞匯,其同義詞匯會的僅被列出,不予重復解釋。例如結構測試(structural testing) 和白盒測試(white box testing)。此類同義詞在術語表中用“見” 與“又見”列出,以便讀者檢索!坝忠姟蓖B接著廣義和狹義詞或含義重疊的詞匯。
4.標準參考
至截稿日期,此標準有效版本為1.2。如所有其他標準一樣,本術語表仍需根據以下相關標準的最新版本不斷修正。此標準由IEC 和 ISO 成員根據目前有效的國際相關標準進行更新。
- BS 7925-2:1998. Software Component Testing.
- DO-178B:1992. Software Considerations in Airborne Systems and Equipment Certification, Requirements and Technical Concepts for Aviation (RTCA SC167).
- IEEE 610.12:1990. Standard Glossary of Software Engineering Terminology.
- IEEE 829:1998. Standard for Software Test Documentation.
- IEEE 1008:1993. Standard for Software Unit Testing.
- IEEE 1012:1986. Standard for Verification and Validation Plans
- IEEE 1028:1997. Standard for Software Reviews and Audits.
- IEEE 1044:1993. Standard Classification for Software Anomalies.
- IEEE 1219:1998. Software Maintenance.
- ISO/IEC 2382-1:1993. Data processing - Vocabulary - Part 1: Fundamental terms.
- ISO 9000:2000. Quality Management Systems – Fundamentals and Vocabulary.
- ISO/IEC 9126-1:2001. Software Engineering – Software Product Quality – Part 1: Quality characteristis and sub-characteristics.
- ISO/IEC 12207:1995. Information Technology – Software Life Cycle Processes.
- ISO/IEC 14598-1:1996. Information Technology – Software Product Evaluation - Part 1: General Overview. 5 .
術語表格式: 英文、中文、簡單中文解釋
字母A
abstract test case 抽象測試用例 參見high level test case.
acceptance 驗收 參見acceptance testing.
acceptance criteria 驗收準則 為了滿足組件或系統使用者、客戶或其他授權實體的需要,組件或系統必須達到的準則。[IEEE 610]
acceptance testing 驗收測試 一般由用戶/客戶進行的確認是否可以接受一個系統的驗證性測試。是根據用戶需求,業務流程進行的正式測試以確保系統符合所有驗收準則。[與IEEE 610一致]
accessibility testing 可達性測試 可達性測試就是測試殘疾人或不方便的人們使用軟件或者組件的容易程度[Gerrard]。即被測試的軟件是否能夠被殘疾或者部分有障礙人士正常使用,這其中也包含了正常人在某些時候發生暫時性障礙的情況下正常使用,如懷抱嬰兒等。
accuracy 準確性 軟件產品的提供的結果的正確性、一致性和精確程度的能力。[ISO9126] 參見functionality testing
actual outcome 實際結果 參見actual result
actual result 實際結果 組件或系統測試之后產生或觀察到的行為
ad hoc review 臨時評審 非正式評審(和正式的評審相比)
ad hoc testing 隨機測試 非正式的測試執行。即沒有正式的測試準備、規格設計和技術應用,也沒有期望結果和必須遵循的測試執行指南。
adaptability 適應性 軟件產品毋需進行額外修改,而適應不同特定環境的能力。[ISO9126] 參見 protability
agile testing 敏捷測試 對使用敏捷方法,如極限編程(Extreme programming)開發的項目進行的軟件測試,強調測試優先行的設計模式,見test driven development
algorithm test [TMap] 算法測試 參見branch testing
alpha testing Alpha測試 由潛在用戶或者獨立的測試團隊在開發環境下或者模擬實際操作環境下進行的測試,通常在開發組織之外進行。通常是對現貨軟件(COTS)進行內部驗收測試的一種方式。
analyzability 可分析性 軟件產品缺陷或運行失敗原因可被診斷的能力,或對修改部分的可識別能力。[ISO 9126] 參見 maintainability.
analyzer 分析器 參見 static analyzer
anomaly 異常 任何和基于需求文檔、設計文檔、用戶文檔、標準或者個人的期望和預期之間偏差的情況,都可以稱為異常。異?梢栽诘幌抻谙旅娴倪^程中識別:評審(review)、測試分析(test analysis)、 編譯(compilation)、軟件產品或應用文檔的使用等。參見defect, deviation, error, fault, failure, incident, problem
arc testing 弧測試 參見 branch testing
attractiveness 吸引力 軟件產品吸引用戶的能力.[ISO9126]參見usability
audit 審計 對軟件產品或過程進行的獨立評審,來確認產品是否滿足標準、指南、規格說明書以及基于客觀準則的步驟等,包括下面的文檔:(1)產品的內容與形式(2)產品開發應該遵循的流程(3)度量符合標準或指南的準則。[IEEE1028]
audit trail 審計跟蹤 以過程輸出作為起點,追溯到原始輸入(例如:數據)的路徑。有利于缺陷分析和過程審計的開展。[與TMap一致]
automated testware 自動測試件 用于自動化測試中的測試件,如,工具腳本
availability 可用性 用戶使用系統或組件的可操作和易用的程度,通常以百分比的形式出現。[IEEE 610]
字母B
back-to-back testing 比對測試 用相同的輸入,執行組件或系統的兩個或多個變量,在產生偏差的時候,對輸出結果進行比較和分析。
baseline 基線 通過正式評審或批準的規格或軟件產品。以它作為繼續開發的基準。并且在變更的時候,必須通過正式的變更流程來進行。[與IEEE 610一致]
basic block 基本塊 一個或多個連續可執行的語句塊,不包含任何分支語句。
basis test set 基本測試集 根據組件的內部結構或規格說明書設計的一組測試用例集。通過執行這組測試用例可以保證達到100%的指定覆蓋準則(coverage criterion)的要求。
bebugging 錯誤散播 參見error seeding
behavior 行為 組件或系統對輸入值和預置條件的反應。
benchmark test 基準測試 (1)為使系統或組件能夠進行度量和比較而制定的一種測試標準;(2)用于組件或系統之間進行的比較或和(1)中提到的標準進行比較的測試。[與IEEE 610一致]
bespoke software 定制軟件 為特定的用戶定制開發的軟件。與之對比的是現貨軟件(off-the-shelf software)。
best practice 最佳實踐 在界定范圍內,幫助提高組織能力的有效方法或創新實踐,通常被同行業組織視最佳的方法或實踐。
beta testing Beta測試 用戶在開發組織外,沒有開發人員參與的情況下進行的測試,檢驗軟件是否滿足客戶及業務需求。這種測試是軟件產品獲得市場反饋進行驗收測試的一種形式。
big-bang testing 大爆炸測試 非增量集成測試的一種方法,測試的時候將軟件單元、硬件單元或者兩者同時,而不是階段性的,集成到組件或者整個系統中去進行測試。[與IEEE 610一致]參見integration testing。
black-box technique 黑盒技術 參見black box test design technique
black-box testing 黑盒測試 不考慮組件或系統內部結構的功能或非功能測試。
black-box test design technique 黑盒測試設計技術 基于系統功能或非功能規格說明書來設計或者選擇測試用例的技術,不涉及軟件內部結構。
bottom-up testing 自底向上測試 漸增式集成測試的一種,其策略是先測試底層的組件,以此為基礎逐步進行更高層次的組件測試,直到系統集成所有的組件。參見integration testing。
boundary value 邊界值 通過分析輸入或輸出變量的邊界或等價劃分(equivalence partition)的邊界來設計測試用例,例如,取變量的最大、最小值、中間值、比最大值大的值、比最小值小的值等。
boundary value analysis 邊界值分析 一種黑盒設計技術(black box test design technique),基于邊界值進行測試用例的設計。
boundary value coverage 邊界值覆蓋 執行一個測試套件(test suite)所能覆蓋的邊界值(boundary value)的百分比。
boundary value testing 邊界值測試 參見boundary value analysis。
branch 分支 在組件中,控制從任何語句到其它任何非直接后續語句的一個條件轉換,或者是一個無條件轉換。例如: case, jump, go to, if-then-else 語句.
branch condition 分支條件 參見條件(condition)
branch condition combination coverage 分支條件組合覆蓋 參見 multiple condition coverage.
branch condition combination testing 分支條件組合測試 參見 multiple condition testing.
branch condition coverage 分支條件覆蓋 參見 condition coverage.
branch coverage 分支覆蓋 執行一個測試套件(test suite)所能覆蓋的分支(branch)的百分比。100%的分支覆蓋(branch coverage)是指100%判定條件覆蓋(decision covergate) 和100%的語句覆蓋(statement covergage)。
bug 缺陷 參見defect。
bug report 缺陷報告 參見defect report。
business process-based testing 基于業務過程測試 一種基于業務描述和/或業務流程的測試用例設計方法。
字母C
Capability Maturity Model (CMM) 能力成熟度模型 描述有效的軟件開發過程關鍵元素的一個五個等級的框架,能力成熟度模型包含了在軟件開發和維護中計劃、工程和管理方面的最佳實踐(best practice),縮寫為CMM。[CMM]
Capability Maturity Model Integration (CMMI) 能力成熟度模型集成 描述有效的軟件產品開發和維護過程的關鍵元素框架,能力成熟度模型集成包含了軟件開發計劃、工程和管理等方面的最佳實踐,是CMM的指定的繼承版本。
capture/playback tool 捕獲/回放工具 一種執行測試工具,能夠捕獲在手工測試過程中的輸入,并且生成可執行的自動化腳本用于后續階段的測試(回放過程)。這類工具通常使用在自動化回歸測試(regression test)中。
capture/replay tool 捕獲/回放工具 參見capture/playback tool
CASE 計算機輔助軟件工程 Computer Aided Software Engineering的首字母縮寫。
CAST 計算機輔助軟件測試 Computer Aided Software Testing的首字母縮寫,參見test automation。在測試過程中使用計算機軟件工具進行輔助的測試。
cause-effect graph 因果圖 用來表示輸入(原因)與結果之間關系的圖表,因果圖可以用來設計測試用例。
cause-effect graphing 因果圖技術 通過因果圖(case-effect graph)設計測試用例的一種黑盒測試設計技術。
cause-effect analysis 因果分析 參見因果圖技術(case-effect graphing)。
cause-effect decision table 因果決策表 參見決策表 (decision table)。
certification 認證 確認一個組件、系統或個人具備某些特定要求的過程,比如通過了某個考試。
changeability 可變性 軟件產品適應修改的能力,[ISO 9126] 參見maintainability
change control 變更控制 參見configuration control
change control board 變更控制委員會CCB 參見configuration control board
checker 檢驗員 參見評審員(Reviewer)
chow's coverage metrics N切換覆蓋度量 參見N 切換覆蓋(N-switch coverage)[Chow]
classification tree method 分類樹方法 運用分類樹法而進行的一種黑盒測試設計技術,通過輸入和/或輸出域的組合來設計測試用例 [Grochtmann]
code 代碼 計算機指令和數據定義在程序語言中的表達形式或是匯編程序、編譯器或其他翻譯器的一種輸出形式。
code analyzer 代碼分析器 參見靜態分析器(static code analyzer)
code coverage 代碼覆蓋 一種分析方法,用于確定軟件的哪些部分被測試套件(test suite)覆蓋到了,哪些部分沒有。例如:語句覆蓋(statement covergage),判定覆蓋(decision coverage)和條件覆蓋(condition covergate)。
code-based testing 基于代碼的測試 參見white box testing
co-existence 共存性 軟件產品與通用環境下與之共享資源的其它獨立軟件之間共存的能力。[ISO 9126] 參見可移植性(portability)。
commercial off-the-shelf software 商業現貨軟件 參見現貨軟件(off-the shelf software)
comparator 比較器 參見test comparator。
compiler 編譯器 將高級命令語言編寫的程序翻譯成能運行的機器語言的工具[IEEE 610].
complete testing 完全測試 參見窮盡測試(exhaustive testing)
completion criteria 完成準則 參見退出準則(exit criteria)
complexity 復雜性 系統或組件的設計和/或內部結構難于理解、維護或驗證的程度。參見cyclomatic complexity.
compliance 一致性 軟件產品與法律和類似規定的標準、慣例或規則的一致性方面的能力。[ ISO9126]
compliance testing 一致性測試 確定組件或系統是否滿足標準的測試過程。
component 組件 一個可被獨立測試的最小軟件單元。
component integration testing 組件集成測試 為發現集成組件接口之間和集成組件交互產生的缺陷而執行的測試。
component specification 組件規格說明 根據組件的功能定義為特定輸入而應該產生的輸出規格進行的功能性和非功能性行為的描述。例如:資源使用(resource utilization).
compound condition 復合條件 通過邏輯操作符(AND, OR 或者 XOR)將兩個或多個簡單條件連結起來:如,“A>0 AND B<1000”
concrete test case 具體測試用例 參見低階測試用例(low level test case).
concurrency testing 并發測試 測試組件或系統的兩個或多個活動在同樣的間隔時間內如何交叉或同步并發。[與IEEE 610一致]
condition 條件 一個可被判定為真、假(true,false)的邏輯表達式。例如: A>B.
condition combination coverage 條件組合覆蓋 參見多條件覆蓋(multiple condition coverage).
condition combination testing 條件組合測試 參見多條件測試(multiple condition testing).
condition coverage 條件覆蓋 執行測試套件(test suite)能夠覆蓋到的條件百分比。100%的條件覆蓋要求測試到每一個條件語句真、假(true,false)的條件。
condition determination coverage 條件決定覆蓋 執行測試套件(test suite)覆蓋到的能夠獨立影響判定結果的單個條件的百分比。100%的條件決定覆蓋意味著100%的判定條件覆蓋。
condition determination testing 條件決定測試 一種白盒測試技術,是對能夠獨立影響決策結果的單獨條件的測試。 condition testing 條件測試一種白盒測試技術,設計測試用例以執行條件的結果。
condition outcome 條件結果 條件判定的結果,為真或假。
confidence test 置信測試 參見冒煙測試(smoke testing)
configuration 配置 根據定義的數值、特性及其相關性綜合設置一個組件或者系統。
configuration auditing 配置審核 對配置庫及配置項的內容進行檢查的過程,比如檢查標準的一致性。 [IEEE 610]
configuration control 配置控制 配置管理的一個方面,包括在正式配置完成之后對配置項進行評價、協調、批準或撤消、以及變更修改的控制。 [IEEE 610]
configuration control board (CCB) 配置控制委員會 負責評估、批準或拒絕配置項修改的組織,此組織應確保被批準的配置修改的執行。 [IEEE 610]
configuration identification 配置標識 配置管理的要素之一,包括選擇配置項,并在技術文檔中記錄其功能和物理特性。[IEEE 610]
configuration item 配置項 配置管理中的硬件、軟件或軟、硬件結合體的集合,在配置管理過程中通常被當做一個實體。[IEEE 610]
configuration management 配置管理 一套技術和管理方面的監督原則,用于確定和記錄一個配置項的功能和物理屬性、控制對這些屬性的變更、記錄和報告變更處理和實現的狀態、以及驗證與指定需求的一致性。[IEEE 610]
configuration management tool 配置管理工具 支持對配置項進行識別、控制、變更管理、版本控制和發布配置項基線(baseline)的工具.[IEEE 610]
configuration testing 配置測試 參見可移植性測試(portability testing)
confirmation testing 確認測試 參見再測試(re-testing)
conformance testing 一致性測試 參見符合性測試(compliance testing)。
consistency 一致性 在系統或組件的各組成部分之間和文檔之間無矛盾,一致,符合標準的程度。[IEEE 610]
control flow 控制流 執行組件或系統中的一系列順序發生的事件或路徑。
control flow graph 控制流圖 通過圖形來表示組件或系統中的一系列順序發生的事件或路徑。
control flow path 控制流路徑 參見路徑(path)
conversion testing 轉換(移植)測試 用于測試已有系統的數據是否能夠轉換到替代系統上的一種測試。
COTS 現貨軟件 Commercial Off-The-Shelf software的首字母縮寫。參見Off-The-Shelf software
coverage 覆蓋 用于確定執行測試套件所能覆蓋項目的程度,通常用百分比來表示。
coverage analysis 覆蓋分析 對測試執行結果進行特定的覆蓋項分析,判斷其是否滿足預先定義的標準,是否需要設計額外的測試用例。
coverage item 覆蓋項 作為測試覆蓋的基礎的一個實體或屬性:如等價劃分(equivalent partitions)或代碼語句(code statement)等。
coverage tool 覆蓋工具 對執行測試套件(test suite)能夠覆蓋的結構元素如語句(statement)、分支(branch)等進行客觀測量的工具。
custom software 定制軟件 參見bespoke software。
cyclomatic complexity 圈復雜度 程序中獨立路徑的數量。一種代碼復雜度的衡量標準,用來衡量一個模塊判定結構的復雜程度,數量上表現為獨立現行路徑條數,即合理的預防錯誤所需測試的最少路徑條數,圈復雜度大說明程序代碼可能質量低且難于測試和維護,根據經驗,程序的可能錯誤和高的圈復雜度有著很大關系。圈復雜度=L-N + 2P,其中L表示為結構圖(程序圖)的邊數;N為結構圖(程序圖)的節點數目;P為無鏈接部分的數目。[與McCabe一致]
cyclomatic number 圈數 參見cyclomatic complexity。
文章來源于領測軟件測試網 http://www.kjueaiud.com/