CN102799531B - 一种基于层次分析理论的软件测试方法 - Google Patents

一种基于层次分析理论的软件测试方法 Download PDF

Info

Publication number
CN102799531B
CN102799531B CN201210260255.2A CN201210260255A CN102799531B CN 102799531 B CN102799531 B CN 102799531B CN 201210260255 A CN201210260255 A CN 201210260255A CN 102799531 B CN102799531 B CN 102799531B
Authority
CN
China
Prior art keywords
test
software
importance degree
importance
degree
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210260255.2A
Other languages
English (en)
Other versions
CN102799531A (zh
Inventor
曹玲玲
张新玲
杨振林
马旭军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Inspur Cloud Computing Co ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201210260255.2A priority Critical patent/CN102799531B/zh
Publication of CN102799531A publication Critical patent/CN102799531A/zh
Application granted granted Critical
Publication of CN102799531B publication Critical patent/CN102799531B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种基于层次分析理论的软件测试方法,软件测试决策分析是软件测试设计的关键环节,测试设计策略制定是否有效、充分对软件测试结果有着非常重要的影响。通常情况下,软件测试工作是在有限的资源和环境下进行,研究如何制定测试策略,实现测试效率最大化,具有至关重要的意义。

Description

一种基于层次分析理论的软件测试方法
技术领域
本发明涉及系统软件测试领域,具体地说是一种基于层次分析理论的软件测试方法。
背景技术
根据测试理论,软件缺陷的分布满足帕累托原则,即测试发现的所有错误中的80%很可能集中在20%的模块中,另外20%的错误很可能集中在80%的程序模块中,即对缺陷集中分布的20%的模块开展的测试工作更有意义。因此,将精力集中于关键的测试项目,尽可能暴露软件隐含的缺陷,才能实施高效的软件测试。而在实际工程中多数项目采用基于软件需求和数据流的测试策略,这种测试策略相对比较简单,用于验证软件是否满足规定的功能、性能等质量特性。但该方法在发现软件问题方面存在局限性,忽略了软件模块间的差异性,没有综合考虑影响软件质量的各种因素而进行有针对性的测试,测试效率不高。在制定测试设计策略的过程中,必须综合考虑影响测试重要度的诸多因素,明确因素间的相互关系,进而得到最终的设计原则。而该项工作在实际测试过程中往往被忽视,测试人员习惯于凭直觉制定测试设计策略,或者认为每个测试项目的重要度、优先级都相同,缺乏设计策略的细致考虑。
发明内容
本发明的目的是提供一种基于层次分析理论的软件测试方法。该方法是从测试效率的角度出发,研究了测试重要度的决策分析算法,采用层次分析理论,实现测试设计重要度的分析,为制定测试设计策略提供理论依据。
本发明的目的是按以下方式实现的,定义测试模块重要度划分原则如下:
1)模块重要度原则:模块重要度与对应的测试重要度呈一致性对应关系,即模块重要度越高,其测试重要度也越高;
2)缺陷分布原则:缺陷分布概率与对应的测试重要度呈一致性对应关系,即缺陷分布概率越高的模块,其测试重要度也越高;
因此,依据测试重要度划分的原则对所要测试的系统软件进行具体而有效地划分步骤如下:
1)建立层次结构模型;
选用参考指标,包括模块重要度指标和影响缺陷分布的软件特性指标,说明测试重要度确定的具体过程,选取指标具体包括:软件关键级别、成熟度、千行代码文档页数、规模、圈复杂度、自测试情况,其中软件关键级别属于软件重要度范畴,而其他指标属于影响软件缺陷分布因素的范畴,这些指标具有以下特点:
(1)影响软件的缺陷分布和缺陷级别;
(2)比较直观,测试设计之前测试人员可通过软件或相关文档直接获得;指标确定之后,需要对指标进行综合分析,衡量指标间的相互权重关系,上述过程主要依据缺陷分布预测理论,采用层次分析法能有效确定权重,层次分析法是把复杂问题分解成各个组成因素,又将这些因素按支配关系分组形成递阶层次结构,通过两两比较的方式确定各个因素相对重要性,然后综合决策者的判断,确定决策方案相对重要性的总排序,需要注意的是,确定测试重要度的目的并非仅局限于排列测试的先后顺序,其最终目的是通过不同模块测试重要度的比对,明确不同重要度的模块采用不同的测试分析和设计策略,层次结构模型建立如下:
方案层(A)包括:模块A测试、模块B测试、模块C测试;
目标层(G)包括:测试重要度;
规则层(C)包括关键级别、成熟度、千行代码文档页数、规模、复杂度、自测试情况;
2)计算权向量并做一致性检验
层次结构模型构建完成后,通过计算判断矩阵中的特征值和相对应的特征向量分析权重,并根据一致性指标进行检验,确定测试数据的相对重要性,采用层次分析法的测试设计重要度分析,能够综合考虑影响测试重要度的相关因素,主观判断与客观数据相结合,获得最终的分析结果,进而为高优先级的测试项目配置更多的资源和采用更为全面的测试覆盖策略和分析策略,进而提高测试效率和质量,使得资源一定的条件下发现更多的软件缺陷,达到提升软件质量的最终目的,进行测试设计重要度分析的过程中,并非孤立地采用层次分析法,其中还涉及到缺陷预测的相关理论,只有将这些策略和方法有机地结合,才能使该项工作更加严谨,获得的结果更为真实可信。
本发明的有益效果是:软件测试决策分析是软件测试设计的关键环节,测试设计策略制定是否有效、充分对软件测试结果有着非常重要的影响。通常情况下,软件测试工作是在有限的资源和环境下进行,研究如何制定测试策略,实现测试效率最大化,具有至关重要的意义。
具体实施方式
实施本发明的一种基于层次分析理论的软件测试方法,
首先必须明确软件测试重要度的划分原则和影响因素指标。国内外一些学者认为软件测试的根本目的就是发现软件存在的缺陷,并以此作为衡量软件测试工作有效性的一个关键指标。另外,从软件重要度的划分可以知道,软件重要度级别越高的模块,对软件的安全性和关键任务的影响越大。基于上述分析,定义如下的测试重要度划分原则。
1)模块重要度原则:模块重要度与对应的测试重要度呈一致性对应关系,即模块重要度越高,其测试重要度也越高;
2)缺陷分布原则:缺陷分布概率与对应的测试重要度呈一致性对应关系,即缺陷分布概率越高的模块,其测试重要度也越高。
无论如何划分,核心的思想都是根据软件对整个系统任务和安全的影响进行划分。因此,获取软件重要度的信息并不困难。确定测试重要度的难点在于软件的缺陷分布概率分析,基于缺陷分布预测理论是解决问题的一个非常有效的途径.关于这方面的技术理论已经形成并在不断完善。20世纪70年代,基于软件规模等度量元的缺陷预测技术逐渐发展,形成了一些软件缺陷预测模型并在实践中得到良好的应用。例如:Akiyama分析了程序验证开始阶段之前程序中所可能有的软件缺陷数量,并提出的软件缺陷与代码行的关系式:D=4.86+0.018L(D为缺陷数,L为行数);Takahashi将代码与具体的文档数量对应起来,给出了缺陷密度的估计式:其中为缺陷率(单位:Thenumberoferrors/KLOC,KLOC为千行代码),f1为程序规约变更的频率(单位:Thenumberofpages/KLOC),f2为程序员技能(单位:Years),f3为程序设计文档(单位:Thenumberofpages/KLOC)。基于软件质量特性与缺陷的关系,可以量化预测软件的缺陷分布情况。因此,我们可以依据测试重要度划分的原则对所要测试的系统软件进行具体而有效地划分。
(1)建立层次结构模型;
选取参考指标,包括模块重要度指标和影响缺陷分布的软件特性指标,说明测试重要度确定的具体过程,选取指标具体为:软件关键级别、成熟度、千行代码文档页数、规模、圈复杂度、自测试情况,其中软件关键级别属于软件重要度范畴,而其他指标属于影响软件缺陷分布因素的范畴。这些指标具有以下特点:1)影响软件的缺陷分布和缺陷级别;
(2)比较直观,测试设计之前测试人员可通过软件或相关文档直接获得;指标确定之后,需要对指标进行综合分析,衡量指标间的相互权重关系,该过程主要依据缺陷分布预测理论。采用层次分析法能有效确定权重。层次分析法是一种系统分析方法,是将人的主观判断用数量形式表达和处理的方法。近年来,层次分析法在问题域分析、设计与决策中日益受到重视。层次分析法是把复杂问题分解成各个组成因素,又将这些因素按支配关系分组形成递阶层次结构。通过两两比较的方式确定各个因素相对重要性,然后综合决策者的判断,确定决策方案相对重要性的总排序。需要注意的是,确定测试重要度的目的并非仅局限于排列测试的先后顺序,其最终目的是通过不同模块测试重要度的比对,明确不同重要度的模块采用不同的测试分析和设计策略。
层次结构模型建立如下:目标层(G):测试重要度。规则层(C):关键级别、成熟度、千行代码文档页数、规模、复杂度、自测试情况。方案层(A):模块A测试、模块B测试、模块C测试。
2)计算权向量并做一致性检验
层次结构模型构建完成后,通过计算判断矩阵中的特征值和相对应的特征向量分析权重,并根据一致性指标进行检验,确定测试数据的相对重要性。采用层次分析法的测试设计重要度分析,能够综合考虑影响测试重要度的相关因素,主观判断与客观数据相结合,获得最终的分析结果,进而为高优先级的测试项目配置更多的资源和采用更为全面的测试覆盖策略和分析策略,进而提高测试效率和质量,使得资源一定的条件下发现更多的软件缺陷,达到提升软件质量的最终目的。进行测试设计重要度分析的过程中,并非孤立地采用层次分析法,其中还涉及到缺陷预测的相关理论,只有将这些策略和方法有机地结合,才能使该项工作更加严谨,获得的结果更为真实可信。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

Claims (1)

1.一种基于层次分析理论的软件测试方法,其特征在于定义测试模块重要度划分原则如下:
1)模块重要度原则:模块重要度与对应的测试重要度呈一致性对应关系,即模块重要度越高,其测试重要度也越高;
2)缺陷分布原则:缺陷分布概率与对应的测试重要度呈一致性对应关系,即缺陷分布概率越高的模块,其测试重要度也越高;
因此,依据测试重要度划分的原则对所要测试的系统软件进行具体而有效地划分步骤如下:
1)建立层次结构模型;
选用参考指标,包括模块重要度指标和影响缺陷分布的软件特性指标,说明测试重要度确定的具体过程,选取指标具体包括:软件关键级别、成熟度、千行代码文档页数、规模、圈复杂度、自测试情况,其中软件关键级别属于软件重要度范畴,而其他指标属于影响软件缺陷分布因素的范畴,这些指标具有以下特点:
(1)影响软件的缺陷分布和缺陷级别;
(2)比较直观,测试设计之前测试人员可通过软件或相关文档直接获得;指标确定之后,需要对指标进行综合分析,衡量指标间的相互权重关系,上述过程主要依据缺陷分布预测理论,采用层次分析法能有效确定权重,层次分析法是把复杂问题分解成各个组成因素,又将这些因素按支配关系分组形成递阶层次结构,通过两两比较的方式确定各个因素相对重要性,然后综合决策者的判断,确定决策方案相对重要性的总排序,需要注意的是,确定测试重要度的目的并非仅局限于排列测试的先后顺序,其最终目的是通过不同模块测试重要度的比对,明确不同重要度的模块采用不同的测试分析和设计策略,层次结构模型建立如下:
方案层(A)包括:模块A测试、模块B测试、模块C测试;
目标层(G)包括:测试重要度;
规则层(C)包括关键级别、成熟度、千行代码文档页数、规模、复杂度、自测试情况;
2)计算权向量并做一致性检验
层次结构模型构建完成后,通过计算判断矩阵中的特征值和相对应的特征向量分析权重,并根据一致性指标进行检验,确定测试数据的相对重要性,采用层次分析法的测试设计重要度分析,能够综合考虑影响测试重要度的相关因素,主观判断与客观数据相结合,获得最终的分析结果,进而为高优先级的测试项目配置更多的资源和采用更为全面的测试覆盖策略和分析策略,进而提高测试效率和质量,使得资源一定的条件下发现更多的软件缺陷,达到提升软件质量的最终目的,进行测试设计重要度分析的过程中,并非孤立地采用层次分析法,其中还涉及到缺陷预测的相关理论,只有将这些策略和方法有机地结合,才能使该项工作更加严谨,获得的结果更为真实可信。
CN201210260255.2A 2012-07-26 2012-07-26 一种基于层次分析理论的软件测试方法 Active CN102799531B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210260255.2A CN102799531B (zh) 2012-07-26 2012-07-26 一种基于层次分析理论的软件测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210260255.2A CN102799531B (zh) 2012-07-26 2012-07-26 一种基于层次分析理论的软件测试方法

Publications (2)

Publication Number Publication Date
CN102799531A CN102799531A (zh) 2012-11-28
CN102799531B true CN102799531B (zh) 2016-04-13

Family

ID=47198644

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210260255.2A Active CN102799531B (zh) 2012-07-26 2012-07-26 一种基于层次分析理论的软件测试方法

Country Status (1)

Country Link
CN (1) CN102799531B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317719B (zh) * 2014-11-11 2017-03-29 浪潮电子信息产业股份有限公司 一种控制软件测试质量的方法
CN106971109A (zh) * 2017-03-24 2017-07-21 南开大学 一种基于指标权重的漏洞挖掘方法的评估策略
CN107766254B (zh) * 2017-11-13 2020-05-08 长光工程师培训中心(长春)有限公司 一种基于层次分析的软件质量评估方法及系统
CN110196803B (zh) * 2018-02-27 2024-04-16 北京京东尚科信息技术有限公司 一种软件缺陷培训方法和系统
CN109783387A (zh) * 2019-01-18 2019-05-21 深圳壹账通智能科技有限公司 穿线测试方法、装置、计算机设备及存储介质
CN110569197B (zh) * 2019-09-12 2022-11-11 中国工程物理研究院计算机应用研究所 一种用于软件可信性评估的可信证据分析与度量方法
CN110968512B (zh) * 2019-11-29 2021-06-01 中国科学院长春光学精密机械与物理研究所 软件质量评估方法、装置、设备及计算机可读存储介质
CN111045951B (zh) * 2019-12-17 2023-09-29 上海创远仪器技术股份有限公司 基于无线电业务模型实现无线电应用软件质量测试效果分析处理的方法
CN111290967A (zh) * 2020-03-10 2020-06-16 武汉联影医疗科技有限公司 一种软件缺陷预测方法、装置、设备及存储介质
CN112699019B (zh) * 2020-12-01 2023-06-23 北京航空航天大学 结合缺陷预测和关联矩阵的面向任务的软件测试策略生成方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101872324A (zh) * 2010-06-23 2010-10-27 北京中星微电子有限公司 一种系统测试方法及装置
CN102193861A (zh) * 2011-03-15 2011-09-21 北京邮电大学 一种基于数据挖掘的软件可信性度量与评估方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100041447A (ko) * 2008-10-14 2010-04-22 삼성전자주식회사 테스트 자동화 장치 및 테스트 자동화 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101872324A (zh) * 2010-06-23 2010-10-27 北京中星微电子有限公司 一种系统测试方法及装置
CN102193861A (zh) * 2011-03-15 2011-09-21 北京邮电大学 一种基于数据挖掘的软件可信性度量与评估方法

Also Published As

Publication number Publication date
CN102799531A (zh) 2012-11-28

Similar Documents

Publication Publication Date Title
CN102799531B (zh) 一种基于层次分析理论的软件测试方法
CN104318482A (zh) 一套智能配电网综合评估体系和方法
CN104881609A (zh) 一种复杂软件系统软件单元可信性评估方法
CN103632203A (zh) 一种基于综合评价的配电网供电区域划分方法
CN103761684A (zh) 一种输电电缆整体状态的综合评估方法及系统
CN104376413A (zh) 基于层次分析法和数据包络法的电网规划方案评估系统
CN101604288A (zh) 一种基于测试数据的软件质量评价方法
CN107665172A (zh) 一种基于复杂加权软件网络的软件缺陷预测方法
CN103996147A (zh) 配电网综合评估方法
Raza et al. Impact of financial development, economic growth and energy consumption on environmental degradation: evidence from Pakistan
CN109783349A (zh) 一种基于动态反馈权重的测试用例优先级排序方法及系统
CN105117847A (zh) 一种变压器故障重要度的评估方法
CN105574632A (zh) 一种交直流混合城市配电网综合效益评估方法
CN114881490A (zh) 一种变电站绿色施工评价方法及系统
Zhang et al. Exploring the causal relationship between carbon emissions and land urbanization quality in China using a panel data analysis
CN103353895A (zh) 一种配电网线损数据的预处理方法
CN113139701B (zh) 一种基于层次分析方法的区域内能源健康度评价方法
CN103970651A (zh) 基于组件安全属性的软件体系结构安全性评估方法
CN104123447A (zh) 一种基于改进数据包络分析的制造系统综合评价方法
Norouzi et al. Environmental sustainability and coal: The role of financial development and globalization in South Africa
CN105976099A (zh) 基于模糊信息的航天型号科研生产管理水平的评估方法
CN102609259A (zh) 一种基础软件平台体系结构设计与评价方法
CN107958344A (zh) 一种基于ahp和swot的配电网发展战略分析方法
CN107918358A (zh) 数控装备故障分析方法和装置
CN109376080B (zh) 时间适配的自动化缺陷定位方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180816

Address after: 250101 S06 tower, 1036, Chao Lu Road, hi tech Zone, Ji'nan, Shandong.

Patentee after: SHANDONG LANGCHAO YUNTOU INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 250014 1036 Shun Ya Road, hi tech Zone, Ji'nan, Shandong.

Patentee before: INSPUR ELECTRONIC INFORMATION INDUSTRY Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee after: Inspur cloud Information Technology Co.,Ltd.

Address before: 250101 S06 tower, 1036, Chao Lu Road, hi tech Zone, Ji'nan, Shandong.

Patentee before: SHANDONG LANGCHAO YUNTOU INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221008

Address after: 100086 Room 307, 3/F, Building 20, East Yard, No. 10, Xibeiwang East Road, Haidian District, Beijing

Patentee after: Beijing Inspur Cloud Computing Co.,Ltd.

Address before: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee before: Inspur cloud Information Technology Co.,Ltd.