CN109359047B - 一种基于系统特征状态的软件测试充分性度量方法 - Google Patents

一种基于系统特征状态的软件测试充分性度量方法 Download PDF

Info

Publication number
CN109359047B
CN109359047B CN201811270209.4A CN201811270209A CN109359047B CN 109359047 B CN109359047 B CN 109359047B CN 201811270209 A CN201811270209 A CN 201811270209A CN 109359047 B CN109359047 B CN 109359047B
Authority
CN
China
Prior art keywords
test
state
characteristic
ksac
data
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
CN201811270209.4A
Other languages
English (en)
Other versions
CN109359047A (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 Institute of Computer Technology and Applications
Original Assignee
Beijing Institute of Computer Technology and Applications
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 Beijing Institute of Computer Technology and Applications filed Critical Beijing Institute of Computer Technology and Applications
Priority to CN201811270209.4A priority Critical patent/CN109359047B/zh
Publication of CN109359047A publication Critical patent/CN109359047A/zh
Application granted granted Critical
Publication of CN109359047B publication Critical patent/CN109359047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Abstract

本发明涉及一种基于系统特征状态的软件测试充分性度量方法,涉及软件测试技术领域。本发明可以定量的评估系统测试充分性,并指导如何提高测试充分性。只要获取到系统之间的通讯协议格式,并能够采集到通讯数据,就可以采用此方法指导开展系统级测试,方法的使用对系统的复杂性程度不敏感,可以支持大型复杂系统的测试。可以直观指示出哪些软件的关键特征状态没有被覆盖。类比于白盒测试中的语句覆盖、分支覆盖、路径覆盖,该方法可以定义为特征状态覆盖、特征状态组合覆盖等多级别的测试覆盖率统计,适应不同安全可靠要求的系统测试终止条件。

Description

一种基于系统特征状态的软件测试充分性度量方法
技术领域
本发明涉及软件测试技术领域,具体涉及一种基于系统特征状态的软件测试充分性度量方法。
背景技术
在开展系统级测试时,现有标准和指南中缺乏具体工程实施规范,缺乏定量的工程可行的测试充分性准则,导致测试人员在实施系统级测试时得不到明确的指导与规约,测试实施完全依赖于系统软件需求文档的质量和粒度,测试充分性无法得到保障。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何提出一种基于系统特征状态的系统级软件测试充分性度量方法,以评价及促进系统级测试的充分性。
(二)技术方案
为了解决上述技术问题,本发明提供了一种基于系统特征状态的软件测试充分性度量方法,包括以下步骤:
第一步:系统应用层协议实时数据采集能力评估
首先确定被测系统的范围及组成,分析各组成部分之间的交互关系,确定之间的通信方式,评估系统组成之间的通迅能否实时进行数据采集或采取其他技术手段获取通信协议数据;
第二步:系统应用层协议的建模与量化分析
使用通用的通讯字描述语言,对系统应用层协议进行描述,计算通信协议字段取值的总数,即系统特征状态的总数,一个通信协议字段为一个特征,一个特征下的一个状态为通信协议字段取值;
第三步:系统特征状态的权重剖面确定
其中,对系统的特征和状态给出权重值的定义,具体方法是在等值分布的基础上,进行针对性地调整;
第四步:生成采集数据的解析程序
依据通讯字描述语言的建模结果,生成用于解析实时采集通信协议数据的解析程序;
用通讯字描述语言把自然语言描述的通讯协议转义成形式化的文本文件,对形式化的通讯协议进行翻译,生成一个可执行程序,用于把采集到的通讯协议数据解析成特征状态覆盖情况;
第五步:进行系统测试验证,收集采集数据
采集数据以时间顺序进行收集并标识;
第六步:对采集数据分析,确认系统测试正常
如果确认系统测试不正常,即测试实际结果与预期结果不一致,有三种处理方式:
(1)剔除不正常的采集数据,继续;
(2)除剔除不正常的采集数据之外,还与不正常采集数据相关的特征状态均清理为未验证;
(3)废弃之前的所有采集数据,重新统计;
第七步:对采集数据进行KSAC指标评估
如果KSAC指标满足要求,则系统测试结束;
如果KSAC指标未满足要求,则生成尚未验证的特征状态清单,继续系统测试;
其中:
系统的nc个特征:ci,i=1,2,…,nc
特征ci的ni个特征:si,j,j=1,2,…,ni
特征ci的权重:αi,αi≥0
特征ci的状态si,j的权重:βi,j,βi,j≥0,
Figure BDA0001845822210000031
特征ci的状态si,j的是否覆盖的标志:
Figure BDA0001845822210000032
关键特征状态累计覆盖率:
Figure BDA0001845822210000033
第八步:针对尚未验证的特征状态,补充新的测试用例
依据尚未验证的特征状态清单,以权重大者为优先,补充进行针对性的测试;
第九步:对补充的采集数据进行KSAC指标评估
如果KSAC指标满足要求,则系统测试结束;
如果KSAC指标未满足要求,则生成尚未验证的特征状态清单,返回第五步,直至已达规定的终止时间或规定的重复次数,系统测试结束。
优选地,还包括第十步:形成系统测试报告,给出KSAC指标评价,如果第六步中采取的是第三种处理方式,则给出的KSAC指标称为无故障运行达到的KSAC指标。
优选地,第二步中,将特征状态分为离散型的特征状态和连续型的特征状态:
(1)离散型的特征状态:属于命令或状态字段,其状态表现为该字段的各种取值;
(2)连续型的特征状态:属于数值量的字段,其状态表现为该数值量的取值区间。
优选地,采集到的通讯协议数据为二进制数据。
优选地,第五步中,以采集数据的采集时间为唯一标识。
(三)有益效果
相比于传统系统测试,本发明具有以下的优势:
(1)客观可定量。可以定量的评估系统测试充分性,并指导如何提高测试充分性。
(2)工程可操作性强。只要获取到系统之间的通讯协议格式,并能够采集到通讯数据,就可以采用此方法指导开展系统级测试,方法的使用对系统的复杂性程度不敏感,可以支持大型复杂系统的测试。
(3)可观测性强。此方法可以直观指示出哪些软件的关键特征状态没有被覆盖。
(4)支持多级别测试覆盖率统计。类比于白盒测试中的语句覆盖、分支覆盖、路径覆盖,该方法可以定义为特征状态覆盖、特征状态组合覆盖等多级别的测试覆盖率统计,适应不同安全可靠要求的系统测试终止条件。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合实施例,对本发明的具体实施方式作进一步详细描述。
本发明提供的一种基于系统特征状态的软件测试充分性度量方法,包括以下步骤:
第一步:系统应用层协议实时数据采集能力评估
当系统具备应用层协议实时数据采集的基本能力时,量化评价的系统测试才具备开展的条件。因此,首先要确定被测系统的范围及组成,分析各组成部分之间的交互关系,明确之间的通信方式,评估系统组成之间的通迅能否实时进行数据采集或采取其他技术手段获取通信协议数据。
第二步:系统应用层协议的建模与量化分析
使用通用的通讯字描述语言,对系统应用层协议进行描述,计算通信协议字段取值的总数,即系统特征状态的总数。一个通信协议字段为一个特征,一个特征下的一个状态为通信协议字段取值;
特征状态一般分为离散型的特征状态和连续型的特征状态:
(1)离散型的特征状态:通常属于命令或状态字段,其状态表现为该字段的各种取值,例如:
表1 XXX系统向XXXXXX发送的报文
Figure BDA0001845822210000061
(2)连续型的特征状态:通常属于数值量的字段,其状态表现为该数值量的取值区间,例如:
表2
Figure BDA0001845822210000062
第三步:系统特征状态的权重剖面确定
对系统的特征和状态给出权重值的定义。通常在等值分布的基础上,进行针对性地调整。
例如:某特征权重剖面:不重要0.5,一般1.0,重要1.5,很重要2.0。例如:
表3
Figure BDA0001845822210000063
Figure BDA0001845822210000071
第四步:生成采集数据的解析程序
依据通讯字描述语言的建模结果,生成用于解析实时采集通信协议数据的解析程序。
用通讯字描述语言把自然语言描述的通讯协议转义成形式化的文本文件,开发一个专有程序,对形式化的通讯协议进行翻译,生成一个可执行程序,用于把采集到的通讯协议数据(二进制数据)解析成特征状态覆盖情况.
第五步:进行系统测试验证,收集采集数据
采集数据以时间顺序进行收集并标识,通常是以采集数据的采集时间为唯一标识。
第六步:对采集数据分析,确认系统测试正常
如果确认系统测试不正常(测试实际结果与预期结果不一致),三种处理方式:
(1)剔除不正常的采集数据,继续;(宽松)
(2)除剔除不正常的采集数据之外,还将与不正常采集数据相关的特征状态均清理为未验证;(较严)
(3)废弃之前的所有采集数据,重新统计。(最严)
第七步:对采集数据进行KSAC指标评估
如果KSAC指标满足要求,则系统测试结束;
如果KSAC指标未满足要求,则生成尚未验证的特征状态清单,继续系统测试。
其中:
系统的nc个特征:ci,i=1,2,…,nc
特征ci的ni个特征:si,j,j=1,2,…,ni
特征ci的权重:αi,αi≥0
特征ci的状态si,j的权重:βi,j,βi,j≥0,
Figure BDA0001845822210000081
特征ci的状态si,j的是否覆盖的标志:
Figure BDA0001845822210000082
关键特征状态累计覆盖率:
Figure BDA0001845822210000083
第八步:针对尚未验证的特征状态,补充新的测试用例
依据尚未验证的特征状态清单,以权重大者为优先,补充进行针对性的测试。
第九步:对补充的采集数据进行KSAC指标评估
如果KSAC指标满足要求,则系统测试结束;
如果KSAC指标未满足要求,则生成尚未验证的特征状态清单,返回第五步,直至已达规定的终止时间或规定的重复次数,系统测试结束。
第十步:形成系统测试报告,给出KSAC指标评价
如果第六步中采取的是最严的处理方式,则给出的KSAC指标称为:无故障运行达到的KSAC指标。类似于硬件可靠性评估中的无故障运行时间。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (5)

1.一种基于系统特征状态的软件测试充分性度量方法,其特征在于,包括以下步骤:
第一步:系统应用层协议实时数据采集能力评估
首先确定被测系统的范围及组成,分析各组成部分之间的交互关系,确定之间的通信方式,评估系统组成之间的通迅能否实时进行数据采集或采取其他技术手段获取通信协议数据;
第二步:系统应用层协议的建模与量化分析
使用通用的通讯字描述语言,对系统应用层协议进行描述,计算通信协议字段取值的总数,即系统特征状态的总数,一个通信协议字段为一个特征,一个特征下的一个状态为通信协议字段取值;
第三步:系统特征状态的权重剖面确定
其中,对系统的特征和状态给出权重值的定义,具体方法是在等值分布的基础上,进行针对性地调整;
第四步:生成采集数据的解析程序
依据通讯字描述语言的建模结果,生成用于解析实时采集通信协议数据的解析程序;
用通讯字描述语言把自然语言描述的通讯协议转义成形式化的文本文件,对形式化的通讯协议进行翻译,生成一个可执行程序,用于把采集到的通讯协议数据解析成特征状态覆盖情况;
第五步:进行系统测试验证,收集采集数据
采集数据以时间顺序进行收集并标识;
第六步:对采集数据分析,确认系统测试正常
如果确认系统测试不正常,即测试实际结果与预期结果不一致,有三种处理方式:
(1)剔除不正常的采集数据,继续;
(2)除剔除不正常的采集数据之外,还与不正常采集数据相关的特征状态均清理为未验证;
(3)废弃之前的所有采集数据,重新统计;
第七步:对采集数据进行KSAC指标评估
如果KSAC指标满足要求,则系统测试结束;
如果KSAC指标未满足要求,则生成尚未验证的特征状态清单,继续系统测试;
其中:
系统的nc个特征:ci,i=1,2,…,nc
特征ci的ni个状态:si,j,j=1,2,…,ni
特征ci的权重:αi,αi≥0
特征ci的状态si,j的权重:βi,j,βi,j≥0,
Figure FDA0002986391810000021
特征ci的状态si,j是否覆盖的标志:
Figure FDA0002986391810000022
关键特征状态累计覆盖率:
Figure FDA0002986391810000023
第八步:针对尚未验证的特征状态,补充新的测试用例
依据尚未验证的特征状态清单,以权重大者为优先,补充进行针对性的测试;
第九步:对补充的采集数据进行KSAC指标评估
如果KSAC指标满足要求,则系统测试结束;
如果KSAC指标未满足要求,则生成尚未验证的特征状态清单,返回第五步,直至已达规定的终止时间或规定的重复次数,系统测试结束。
2.如权利要求1所述的方法,其特征在于,还包括第十步:形成系统测试报告,给出KSAC指标评价,如果第六步中采取的是第三种处理方式,则给出的KSAC指标称为无故障运行达到的KSAC指标。
3.如权利要求1所述的方法,其特征在于,第二步中,将特征状态分为离散型的特征状态和连续型的特征状态:
(1)离散型的特征状态:属于命令或状态字段,其状态表现为该字段的各种取值;
(2)连续型的特征状态:属于数值量的字段,其状态表现为该数值量的取值区间。
4.如权利要求1所述的方法,其特征在于,采集到的通讯协议数据为二进制数据。
5.如权利要求1至4中任一项所述的方法,其特征在于,第五步中,以采集数据的采集时间为唯一标识。
CN201811270209.4A 2018-10-29 2018-10-29 一种基于系统特征状态的软件测试充分性度量方法 Active CN109359047B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811270209.4A CN109359047B (zh) 2018-10-29 2018-10-29 一种基于系统特征状态的软件测试充分性度量方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811270209.4A CN109359047B (zh) 2018-10-29 2018-10-29 一种基于系统特征状态的软件测试充分性度量方法

Publications (2)

Publication Number Publication Date
CN109359047A CN109359047A (zh) 2019-02-19
CN109359047B true CN109359047B (zh) 2021-05-14

Family

ID=65347254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811270209.4A Active CN109359047B (zh) 2018-10-29 2018-10-29 一种基于系统特征状态的软件测试充分性度量方法

Country Status (1)

Country Link
CN (1) CN109359047B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111783930B (zh) * 2019-04-03 2024-03-12 南京大学 一种基于路径状态的神经网络测试充分性评估方法
CN111679960B (zh) * 2020-05-30 2021-01-26 北京航空航天大学 一种可靠性、弹性、脆性的系统状态评估方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500139A (zh) * 2013-09-25 2014-01-08 刘爱琴 一种通信软件集成测试系统及测试方法
US9329978B2 (en) * 2013-08-20 2016-05-03 Sap Portals Israel Ltd Software unit test immunity index
CN106651624A (zh) * 2015-07-14 2017-05-10 国网辽宁省电力有限公司阜新供电公司 一种综合业务接入网运行质量评价方法及其测试平台
CN106844197A (zh) * 2016-12-26 2017-06-13 重庆邮电大学 基于代数重建法反馈控制的一致性测试用例策略调度方法
CN108614765A (zh) * 2016-12-12 2018-10-02 中国航空工业集团公司西安航空计算技术研究所 目标机中嵌入式软件测试数据获取方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9329978B2 (en) * 2013-08-20 2016-05-03 Sap Portals Israel Ltd Software unit test immunity index
CN103500139A (zh) * 2013-09-25 2014-01-08 刘爱琴 一种通信软件集成测试系统及测试方法
CN106651624A (zh) * 2015-07-14 2017-05-10 国网辽宁省电力有限公司阜新供电公司 一种综合业务接入网运行质量评价方法及其测试平台
CN108614765A (zh) * 2016-12-12 2018-10-02 中国航空工业集团公司西安航空计算技术研究所 目标机中嵌入式软件测试数据获取方法
CN106844197A (zh) * 2016-12-26 2017-06-13 重庆邮电大学 基于代数重建法反馈控制的一致性测试用例策略调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"线性独立路径覆盖率的软件测试充分性判别方法";易加伟等;《计算机工程与设计》;20051231;全文 *

Also Published As

Publication number Publication date
CN109359047A (zh) 2019-02-19

Similar Documents

Publication Publication Date Title
JPH10510385A (ja) ソフトウエア品質のアーキテクチャに基づく分析のための方法およびシステム
CN111104981A (zh) 一种基于机器学习的水文预报精度评价方法及系统
Grimstad et al. A framework for the analysis of software cost estimation accuracy
CN109359047B (zh) 一种基于系统特征状态的软件测试充分性度量方法
Ortu et al. On comparing software quality metrics of traditional vs blockchain-oriented software: An empirical study
Lavazza et al. Convertibility of function points into COSMIC function points: a study using piecewise linear regression
CN111199493A (zh) 一种基于客户缴费信息及征信信息的欠费风险识别方法
Alverbro et al. Methods for risk analysis
Shepperd et al. Metrics, outlier analysis and the software design process
CN105843736A (zh) 一种电力系统状态估计软件的测试方法
Schroeder et al. Unveiling anomalies and their impact on software quality in model-based automotive software revisions with software metrics and domain experts
Sahraoui et al. Investigating the impact of a measurement program on software quality
Felbinger et al. Empirical study of correlation between mutation score and model inference based test suite adequacy assessment
TW201833825A (zh) 因果關係評估裝置、因果關係評估系統以及因果關係評估方法
CN110765600A (zh) 一种航空发动机计算分析软件能力测评方法及系统
CN111047438A (zh) 数据处理方法、装置和计算机可读存储介质
Permaisuri et al. Influence of organizational culture and loyalty on employee performance in the pandemic era
Khera Time Series Analysis Of Nifty Bank Index-A Measure Of Banking Industry
Hampp A cost-benefit model for software quality assurance activities
Pomorova et al. The Intelligent Decision Support System for Choice of Software Project
Johnson et al. Objective software quality assessment
Stärk Quality assessment of animal disease surveillance and survey systems
Watcharathiansakul Reliability analysis of claim data for quality claim management
Sharma et al. Ranking Based Software Quality Assessment Using Experts Opinion
Yanase et al. Assessment method of operational procedure for runbook automation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant