CN108920374A - 一种快速统计需求测试覆盖率的方法及系统 - Google Patents
一种快速统计需求测试覆盖率的方法及系统 Download PDFInfo
- Publication number
- CN108920374A CN108920374A CN201810758241.0A CN201810758241A CN108920374A CN 108920374 A CN108920374 A CN 108920374A CN 201810758241 A CN201810758241 A CN 201810758241A CN 108920374 A CN108920374 A CN 108920374A
- Authority
- CN
- China
- Prior art keywords
- demand
- test
- software
- project management
- coverage
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3676—Test management for coverage analysis
Abstract
本发明提供一种快速统计需求测试覆盖率的方法及系统,方法包括如下步骤:步骤S1.采用项目管理工具对软件测试过程进行管理,生成项目管理表;步骤S2.设置项目管理表的字段;步骤S3.启动软件测试;步骤S4.软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;步骤S5.输出需求测试覆盖率结果。系统包括:软件测试过程管理模块、字段设置模块、软件测试启动模块、需求测试覆盖率统计模块以及需求测试覆盖率输出模块。本发明自动输出软件测试的需求覆盖结果、需求执行结果以及需求测试覆盖率,准确率高,节省人力,效率高,且不受频繁变更软件测试用例的影响,容易维护。
Description
技术领域
本发明属于软件测试领域,具体涉及一种快速统计需求测试覆盖率的方法及系统。
背景技术
在软件生命周期中,软件测试是检测软件质量的重要环节。软件测试活动应伴随软件周期的各个阶段,根据IPD流程定义,IPD流程的六个阶段为:概念、计划、开发、验证、发布、生命周期;IPD流程的主要测试类型有:构建模块功能验证(BBFV)、构建模块集成测试(BBIT)、系统设计验证(SDV)、系统集成测试(SIT)、系统验证测试(SVT)、β测试(Beta)、认证和Build测试(C&BT);不同的产品测试对象有:模块、Building Block、Build、原型机、初始产品;测试过程管理有:测试策略、测试过程估计、测试计划管理、测试风险管理,以及测试质量目标、测试质量标准、相关利益人等。
经过一系列专业的软件测试活动后,最后需要对整体软件质量输出评估报告,包括测试覆盖评估、测试过程评估、缺陷分析评估等内容。其中测试覆盖评估中有一个很重要的测试输出----需求覆盖度评估,对产品需求的执行结果、覆盖率等进行正确的统计和输出。
对产品需求执行覆盖率的统计比较传统的方法是使用excel列表需求后,在需求后面加上执行结果标注的一列,手动修改状态为Pass、Fail、Block等,最后再根据表格的统计手动算出,执行覆盖率有点多少、通过率多少等数据。
手动编写需求列表后,再根据用例执行结果去标注需求是否执行成功,手动维护需求列表,另外执行用例的结果在整个测试周期中会经常发生变化,维护成本较高。
需求对应的用例一般有多条,在测试过程中也会根据实际bug、测试情况等对已有用例进行维护,所以针对用例经常发生变化的情况,需求对应的用例不好更新维护;根据用例执行结果统计需求执行结果也不好统计。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种快速统计需求测试覆盖率的方法及系统,是非常有必要的。
发明内容
本发明的目的在于,针对上述手动统计需求测试的结果,手动计算执行覆盖率和测试通过率比较繁琐,容易出现错误的缺陷,提供一种快速统计需求测试覆盖率的方法及系统,以解决上述技术问题。
为实现上述目的,本发明给出以下技术方案:
一种快速统计需求测试覆盖率的方法,包括如下步骤:
步骤S1.采用项目管理工具对软件测试过程进行管理,生成项目管理表;
步骤S2.设置项目管理表的字段;
步骤S3.启动软件测试;
步骤S4.软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;
步骤S5.输出需求测试覆盖率结果。通过项目管理表设置相应字段,对软件测试过程进行管理,使得统计需求测试覆盖率不受测试用例变更、测试用例增加以及测试用例删除的影响,方便管理。
进一步地,步骤S2的具体步骤如下:
步骤S21. 设置项目管理表中有软件测试用例的需求编号字段;
步骤S22. 设置项目管理表中有软件测试用例的执行结果字段;
步骤S23. 设置项目管理表中有软件测试用例的错误编号字段。通过以上设置的字段,实现对需求编号按照执行结果分类,同时,查找到执行失败的需求对应的测试用例的错误编号。
进一步地,步骤S22中的执行结果包括测试通过、测试失败以及测试被阻塞。标注以上执行结果,方便软件测试用例的需求安装执行结果进行分类。
进一步地,步骤S4的具体步骤如下:
步骤S41.软件测试结束后,获取项目管理表中每个软件测试用例的需求编号,统计出经过测试的需求编号数量;
步骤S42.获取软件的实际需求编号数量;
步骤S43.比较经过测试的需求编号数量与实际需求编号数量,得到软件测试用例的需求覆盖结果和需求覆盖率;
步骤S44.获取项目管理表中每个软件测试用例的执行结果和需求编号,统计出各个执行结果的需求编号数量;
步骤S45.比较执行结果为通过的需求编号的数量与经过测试的需求编号数量,得到经过测试的需求通过率;
步骤S46.比较执行结果为通过的需求编号的数量与实际需求编号数量,得到软件的需求通过率。该步骤通过python脚本制作工具对项目管理表进行的操作进行封装,实现自动化操作。
进一步地,步骤1中项目管理工具采用jira或mantis或QC或Testlink项目管理工具。项目管理工具支持直接导入导出excel,方便测试用例以excel形式展示。
本发明还给出如下技术方案:
一种快速统计需求测试覆盖率的系统,包括:
软件测试过程管理模块,用于采用项目管理工具对软件测试过程进行管理,生成项目管理表;
字段设置模块,用于设置项目管理表中有软件测试用例的需求编号字段;
软件测试启动模块,用于启动软件测试;
需求测试覆盖率统计模块,用于软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;
需求测试覆盖率输出模块,用于输出需求测试覆盖率。
进一步地,字段设置模块包括:
需求编号字段设置单元,用于设置项目管理表中有软件测试用例的需求编号字段;
执行结果字段设置单元,用于设置项目管理表中有软件测试用例的执行结果字段;
错误编号字段设置单元,用于设置项目管理表中有软件测试用例的错误编号字段。通过以上设置的字段,实现对需求编号按照执行结果分类,同时,查找到执行失败的需求对应的测试用例的错误编号。
进一步地,执行结果字段设置单元中的执行结果包括测试通过、测试失败以及测试被阻塞。标注以上执行结果,方便软件测试用例的需求安装执行结果进行分类。
进一步地,需求测试覆盖率统计模块包括:
经过测试的需求编号数量获取单元,用于软件测试结束后,获取项目管理表中每个软件测试用例的需求编号,统计出经过测试的需求编号数量;
实际需求编号数量获取单元,用于获取软件的实际需求编号数量;
需求覆盖结果及覆盖率获取单元,用于比较经过测试的需求编号数量与实际需求编号数量,得到软件测试用例的需求覆盖结果和需求覆盖率;
各执行结果的需求编号数量获取单元,获取项目管理表中每个软件测试用例的执行结果和需求编号,统计出各个执行结果的需求编号数量;
经过测试需求通过率,比较执行结果为通过的需求编号的数量与经过测试的需求编号数量,得到经过测试的需求通过率;
软件需求通过率,比较执行结果为通过的需求编号的数量与实际需求编号数量,得到软件的需求通过率。该步骤通过python脚本制作工具对项目管理表进行的操作进行封装,实现自动化操作。
进一步地,软件测试过程管理模块中项目管理工具采用jira或mantis或QC或Testlink项目管理工具。项目管理工具支持直接导入导出excel,方便测试用例以excel形式展示。
本发明的有益效果在于:
本发明自动输出软件测试的需求覆盖结果、需求执行结果以及需求测试覆盖率,准确率高,节省人力,效率高,且不受频繁变更软件测试用例的影响,容易维护。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
图1为本发明的方法流程图;
图2为本发明统计需求测试覆盖率的方法流程图;
图3为本发明的系统示意图;
其中,1-软件测试过程管理模块;2-字段设置模块;2.1-需求编号字段设置单元;2.2-执行结果字段设置单元;2.3-错误编号字段设置单元;3-软件测试启动模块;4-需求测试覆盖率统计模块;4.1-经过测试的需求编号数量获取单元;4.2-实际需求编号数量获取单元;4.3-需求覆盖结果及覆盖率获取单元;4.4-各执行结果的需求编号数量获取单元;4.5-经过测试需求通过率;4.6-软件需求通过率;5-需求测试覆盖率输出模块。
具体实施方式:
为使得本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明具体实施例中的附图,对本发明中的技术方案进行清楚、完整地描述。
实施例1:
如图1所示,本发明提供一种快速统计需求测试覆盖率的方法,包括如下步骤:
步骤S1.采用项目管理工具对软件测试过程进行管理,生成项目管理表;项目管理工具采用jira或mantis或QC或Testlink项目管理工具;
步骤S2.设置项目管理表的字段;如图2所示,具体步骤如下:
步骤S21. 设置项目管理表中有软件测试用例的需求编号字段;
步骤S22. 设置项目管理表中有软件测试用例的执行结果字段;执行结果包括测试通过、测试失败以及测试被阻塞;
步骤S23. 设置项目管理表中有软件测试用例的错误编号字段;
步骤S3.启动软件测试;
步骤S4.软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;具体步骤如下:
步骤S41.软件测试结束后,获取项目管理表中每个软件测试用例的需求编号,统计出经过测试的需求编号数量;
步骤S42.获取软件的实际需求编号数量;
步骤S43.比较经过测试的需求编号数量与实际需求编号数量,得到软件测试用例的需求覆盖结果和需求覆盖率;
步骤S44.获取项目管理表中每个软件测试用例的执行结果和需求编号,统计出各个执行结果的需求编号数量;
步骤S45.比较执行结果为通过的需求编号的数量与经过测试的需求编号数量,得到经过测试的需求通过率;
步骤S46.比较执行结果为通过的需求编号的数量与实际需求编号数量,得到软件的需求通过率;
步骤S5.输出需求测试覆盖率结果。
实施例2:
如图2所示,一种快速统计需求测试覆盖率的系统,包括:
软件测试过程管理模块1,用于采用项目管理工具对软件测试过程进行管理,生成项目管理表;项目管理工具采用jira或mantis或QC或Testlink项目管理工具;
字段设置模块2,用于设置项目管理表中有软件测试用例的需求编号字段;字段设置模块2包括:
需求编号字段设置单元2.1,用于设置项目管理表中有软件测试用例的需求编号字段;
执行结果字段设置单元2.2,用于设置项目管理表中有软件测试用例的执行结果字段;执行结果包括测试通过、测试失败以及测试被阻塞;
错误编号字段设置单元2.3,用于设置项目管理表中有软件测试用例的错误编号字段;
软件测试启动模块3,用于启动软件测试;
需求测试覆盖率统计模块4,用于软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;需求测试覆盖率统计模块4包括:
经过测试的需求编号数量获取单元4.1,用于软件测试结束后,获取项目管理表中每个软件测试用例的需求编号,统计出经过测试的需求编号数量;
实际需求编号数量获取单元4.2,用于获取软件的实际需求编号数量;
需求覆盖结果及覆盖率获取单元4.3,用于比较经过测试的需求编号数量与实际需求编号数量,得到软件测试用例的需求覆盖结果和需求覆盖率;
各执行结果的需求编号数量获取单元4.4,获取项目管理表中每个软件测试用例的执行结果和需求编号,统计出各个执行结果的需求编号数量;
经过测试需求通过率4.5,比较执行结果为通过的需求编号的数量与经过测试的需求编号数量,得到经过测试的需求通过率;
软件需求通过率4.6,比较执行结果为通过的需求编号的数量与实际需求编号数量,得到软件的需求通过率;
需求测试覆盖率输出模块5,用于输出需求测试覆盖率。通过项目管理表设置相应字段,对软件测试过程进行管理,使得统计需求测试覆盖率不受测试用例变更、测试用例增加以及测试用例删除的影响,方便管理。
本发明的实施例是说明性的,而非限定性的,上述实施例只是帮助理解本发明,因此本发明不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他的具体实施方式,同样属于本发明保护的范围。
Claims (10)
1.一种快速统计需求测试覆盖率的方法,其特征在于,包括如下步骤:
步骤S1.采用项目管理工具对软件测试过程进行管理,生成项目管理表;
步骤S2.设置项目管理表的字段;
步骤S3.启动软件测试;
步骤S4.软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;
步骤S5.输出需求测试覆盖率结果。
2.如权利要求1所述的一种快速统计需求测试覆盖率的方法,其特征在于,步骤S2的具体步骤如下:
步骤S21. 设置项目管理表中有软件测试用例的需求编号字段;
步骤S22. 设置项目管理表中有软件测试用例的执行结果字段;
步骤S23. 设置项目管理表中有软件测试用例的错误编号字段。
3.如权利要求2所述的一种快速统计需求测试覆盖率的方法,其特征在于,
步骤S22中的执行结果包括测试通过、测试失败以及测试被阻塞。
4.如权利要求3所述的一种快速统计需求测试覆盖率的方法,其特征在于,
步骤S4的具体步骤如下:
步骤S41.软件测试结束后,获取项目管理表中每个软件测试用例的需求编号,统计出经过测试的需求编号数量;
步骤S42.获取软件的实际需求编号数量;
步骤S43.比较经过测试的需求编号数量与实际需求编号数量,得到软件测试用例的需求覆盖结果和需求覆盖率;
步骤S44.获取项目管理表中每个软件测试用例的执行结果和需求编号,统计出各个执行结果的需求编号数量;
步骤S45.比较执行结果为通过的需求编号的数量与经过测试的需求编号数量,得到经过测试的需求通过率;
步骤S46.比较执行结果为通过的需求编号的数量与实际需求编号数量,得到软件的需求通过率。
5.如权利要求1所述的一种快速统计需求测试覆盖率的方法,其特征在于,步骤1中项目管理工具采用jira或mantis或QC或Testlink项目管理工具。
6.一种快速统计需求测试覆盖率的系统,其特征在于,包括:
软件测试过程管理模块(1),用于采用项目管理工具对软件测试过程进行管理,生成项目管理表;
字段设置模块(2),用于设置项目管理表中有软件测试用例的需求编号字段;
软件测试启动模块(3),用于启动软件测试;
需求测试覆盖率统计模块(4),用于软件测试结束后,根据项目管理表中的字段,自动统计需求测试覆盖率;
需求测试覆盖率输出模块(5),用于输出需求测试覆盖率。
7.如权利要求6所述的一种快速统计需求测试覆盖率的系统,其特征在于,字段设置模块(2)包括:
需求编号字段设置单元(2.1),用于设置项目管理表中有软件测试用例的需求编号字段;
执行结果字段设置单元(2.2),用于设置项目管理表中有软件测试用例的执行结果字段;
错误编号字段设置单元(2.3),用于设置项目管理表中有软件测试用例的错误编号字段。
8.如权利要求7所述的一种快速统计需求测试覆盖率的系统,其特征在于,执行结果字段设置单元(2.2)中的执行结果包括测试通过、测试失败以及测试被阻塞。
9.如权利要求8所述的一种快速统计需求测试覆盖率的系统,其特征在于,需求测试覆盖率统计模块(4)包括:
经过测试的需求编号数量获取单元(4.1),用于软件测试结束后,获取项目管理表中每个软件测试用例的需求编号,统计出经过测试的需求编号数量;
实际需求编号数量获取单元(4.2),用于获取软件的实际需求编号数量;
需求覆盖结果及覆盖率获取单元(4.3),用于比较经过测试的需求编号数量与实际需求编号数量,得到软件测试用例的需求覆盖结果和需求覆盖率;
各执行结果的需求编号数量获取单元(4.4),获取项目管理表中每个软件测试用例的执行结果和需求编号,统计出各个执行结果的需求编号数量;
经过测试需求通过率(4.5),比较执行结果为通过的需求编号的数量与经过测试的需求编号数量,得到经过测试的需求通过率;
软件需求通过率(4.6),比较执行结果为通过的需求编号的数量与实际需求编号数量,得到软件的需求通过率。
10.如权利要求6所述的一种快速统计需求测试覆盖率的方法,其特征在于,软件测试过程管理模块(1)中项目管理工具采用jira或mantis或QC或Testlink项目管理工具。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810758241.0A CN108920374A (zh) | 2018-07-11 | 2018-07-11 | 一种快速统计需求测试覆盖率的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810758241.0A CN108920374A (zh) | 2018-07-11 | 2018-07-11 | 一种快速统计需求测试覆盖率的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108920374A true CN108920374A (zh) | 2018-11-30 |
Family
ID=64410964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810758241.0A Pending CN108920374A (zh) | 2018-07-11 | 2018-07-11 | 一种快速统计需求测试覆盖率的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108920374A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110806969A (zh) * | 2019-09-18 | 2020-02-18 | 北京你财富计算机科技有限公司 | 一种测试用例完整度评估方法、装置及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5754760A (en) * | 1996-05-30 | 1998-05-19 | Integrity Qa Software, Inc. | Automatic software testing tool |
CN103530228A (zh) * | 2013-09-27 | 2014-01-22 | 西安电子科技大学 | 一种基于模型的软件测试方法 |
KR101371400B1 (ko) * | 2012-12-04 | 2014-03-10 | 한국항공우주연구원 | 테스트 스크립트의 부가정보를 이용한 요구사항 관리 시스템 및 방법 |
CN104866426A (zh) * | 2015-05-28 | 2015-08-26 | 华北计算技术研究所 | 软件测试综合控制方法及系统 |
CN107797929A (zh) * | 2017-10-26 | 2018-03-13 | 北京广利核系统工程有限公司 | 可编程逻辑仿真测试功能覆盖率的统计方法和装置 |
CN107844424A (zh) * | 2017-11-15 | 2018-03-27 | 杭州杉石科技有限公司 | 基于模型的测试系统及方法 |
-
2018
- 2018-07-11 CN CN201810758241.0A patent/CN108920374A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5754760A (en) * | 1996-05-30 | 1998-05-19 | Integrity Qa Software, Inc. | Automatic software testing tool |
KR101371400B1 (ko) * | 2012-12-04 | 2014-03-10 | 한국항공우주연구원 | 테스트 스크립트의 부가정보를 이용한 요구사항 관리 시스템 및 방법 |
CN103530228A (zh) * | 2013-09-27 | 2014-01-22 | 西安电子科技大学 | 一种基于模型的软件测试方法 |
CN104866426A (zh) * | 2015-05-28 | 2015-08-26 | 华北计算技术研究所 | 软件测试综合控制方法及系统 |
CN107797929A (zh) * | 2017-10-26 | 2018-03-13 | 北京广利核系统工程有限公司 | 可编程逻辑仿真测试功能覆盖率的统计方法和装置 |
CN107844424A (zh) * | 2017-11-15 | 2018-03-27 | 杭州杉石科技有限公司 | 基于模型的测试系统及方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110806969A (zh) * | 2019-09-18 | 2020-02-18 | 北京你财富计算机科技有限公司 | 一种测试用例完整度评估方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103578568B (zh) | 固态硬盘的性能测试方法及装置 | |
CN107808831A (zh) | 全程可溯源半导体测试数据记录方法 | |
CN106771991B (zh) | 一种应用于反熔丝fpga编程前的自动化测试方法 | |
CN102169846B (zh) | 一种在集成电路晶圆测试过程中实现多维变量密码并行写入的方法 | |
CN103279063B (zh) | 适用于电子部件生产线的检测防错方法 | |
CN107390110A (zh) | 一种对pcba进行自动测试的方法、装置及系统 | |
CN111126759B (zh) | 一种基于异常事件故障关联度的电能表状态评估方法 | |
CN105511445A (zh) | 基于局部近邻标准化矩阵的多模态过程故障检测方法 | |
CN104898042B (zh) | 产生特征化扫描样本的方法与装置 | |
CN106896800A (zh) | 使用分析/统计建模来进行连续过程验证的方法和装置 | |
CN105205002B (zh) | 一种基于测试工作量的软件安全缺陷发现模型的建模方法 | |
CN108920374A (zh) | 一种快速统计需求测试覆盖率的方法及系统 | |
CN106844196A (zh) | 一种支付终端嵌入式软件测试工作量统计系统 | |
CN109885500A (zh) | 一种提高软件测试覆盖率的方法和系统 | |
Kannangara et al. | An empirical evaluation of impact of refactoring on internal and external measures of code quality | |
CN109710240A (zh) | 流程图分解方法及系统 | |
CN103678529B (zh) | 晶圆多次测试数据的整合方法 | |
CN103364660B (zh) | 一种目标芯片中多个晶体管的测试方法 | |
CN105161439B (zh) | 晶圆测试管理系统及方法 | |
CN106355379A (zh) | 产品测试方法 | |
CN209000871U (zh) | 一种晶圆测试系统 | |
CN116599572A (zh) | 一种商用批产卫星单机智能化测试方法 | |
Kuipers et al. | Maintainability index revisited–position paper | |
CN109872813A (zh) | 检测系统阳性率评估方法及装置、计算机可读存储介质 | |
CN105310687B (zh) | 基于移动互联网的动态心电实时监控方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181130 |