339 lines
16 KiB
Plaintext
339 lines
16 KiB
Plaintext
Q/SY KLD
|
||
昆仑数智科技有限责任公司企业标准
|
||
Q/SY KLD
|
||
软件测试缺陷分类规范
|
||
Specificationforsoftwaretestdefectclassification
|
||
(草案)
|
||
20XX-XX-XX发布
|
||
20XX-XX-XX实施
|
||
昆仑数智科技有限责任公司
|
||
发布
|
||
目
|
||
次
|
||
前言.
|
||
1范围...
|
||
2规范性引用文件.
|
||
1
|
||
3术语和定义..
|
||
3.1软件缺陷SoftwareDefect.
|
||
3.2时序TemporalSequence.
|
||
3.3时限TimeConstraint.
|
||
1
|
||
4软件测试缺陷分类.
|
||
4.1缺陷来源类...
|
||
1
|
||
4.2质量属性类..
|
||
.5
|
||
5软件测试缺陷严重等级.
|
||
7
|
||
5.1致命..
|
||
5.2严重..
|
||
7
|
||
5.3一般..
|
||
8
|
||
5.4轻微...
|
||
8
|
||
参考文献...
|
||
9
|
||
前
|
||
言
|
||
本文件按照GB/T1.1一2020《标准化工作导则第1部分:标准化文件的结构和起草规则》的规定
|
||
起草。
|
||
本文件是Q/SYXXXXX《XXXXXXXX》的第1部分。Q/SYXXXXX已经发布了以下部分:
|
||
第1部分:XXXXXXXXXXXXXXXX;
|
||
第2部分:XXXXXXXXXXXXX。
|
||
(分部分标准应有此段描述,只写出已经发布的,没有发布的可在引言中描述。)
|
||
本文件由数字和信息化管理部提出。
|
||
(信息标准提出单位只可以是”数字和信息化管理部”或中国石油天然气集团有限公司标准化委
|
||
员会信息技术专业标准化技术委员会”)
|
||
本文件由中国石油天然气集团有限公司标准化委员会信息技术专业标准化技术委员会归口。
|
||
本文件起草单位:数字和信息化管理部、共享运营公司、勘探开发研究院、昆仑数智。
|
||
(起草单位写到局级单位且为简称【在每年标准制修订计划中有简称,可查询】,应与编制说明中
|
||
的单位对应一致,集团公司企业标准至少应由3个局级单位共同起草)
|
||
本文件主要起草人:XXX、XXX。
|
||
(专家审查会之前,起草人应确定,排名顺序应按照编写标准的责献程度排名。)
|
||
本文件主要审查人:XXX、XXX。
|
||
1范围
|
||
本文件规定了软件测试缺陷的分类、等级划分的要求。
|
||
本文件适用于软件单元、部件、配置管理、系统各个测试中的缺陷分类和分级。
|
||
2规范性引用文件
|
||
下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,
|
||
仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本
|
||
文件。
|
||
GB/T15532-2008计算机软件测试规范
|
||
GB/T38634.3-2020系统与软件工程软件测试第3部分:测试文档
|
||
GB/T38634.4-2020系统与软件工程软件测试第4部分:测试技术
|
||
GB/T20001.3-2015标准编写规则第3部分:分类标准
|
||
3术语和定义
|
||
GB/T11457中确立的以及下列术语和定义适用本标准。
|
||
3.1
|
||
软件缺陷SoftwareDefect
|
||
软件缺陷是指软件产品或系统中存在的错误、缺陷或不足,导致其无法满足需求规格、设计预期或
|
||
用户期望的功能、性能、安全性等质量属性。
|
||
3.2
|
||
时序TemporalSequence
|
||
时序指程序执行过程中,不同操作或事件发生的时间顺序及其逻辑依赖关系。
|
||
3.3
|
||
时限TimeConstraint
|
||
时限指程序或任务必须在特定时间范围内完成执行的强制性要求。
|
||
3.4
|
||
WCAG标准WebContentAccessibilityGuidelines
|
||
WCAG(WebContentAccessibilityGuidelines,Web内容无障碍指南)是由方维网联盟(W3C)制
|
||
定的国际标准,旨在确保残障人士能够平等访问和使用网络内容。
|
||
4软件测试缺陷分类
|
||
软件缺陷采用双维度分类体系,按软件测试缺陷来源和质量属性双维度分类,避免交叉重复。
|
||
4.1缺陷来源类
|
||
4.1.1需求缺陷
|
||
需求缺陷指虽然软件的设计、实现与相应的系统需求及软件需求文档一致,但是系统需求或软件需
|
||
求实际存在缺陷,产生潜在错误。
|
||
4.1.1.1需求偏离缺陷
|
||
需求偏离缺陷一般包括:
|
||
a)软件不能满足顾客或系统的需求,包括研制总要求、研制方案、研制任务书、需求规格规格说
|
||
明等文档中描述的需求;
|
||
b)偏离实际使用目标,包括功能、性能、安全等需求不能满足最终用户实际使用要求;
|
||
c)需求的逻辑关系存在错误。
|
||
4.1.1.2环境缺陷
|
||
环境缺陷一般包括:
|
||
a)在现有的资源限制内,无法实现所有的需求;
|
||
b)不能满足软件实际运行环境需求,如软件运行环境受环境干扰,但需求中未明确抗环境干扰的
|
||
要求。
|
||
4.1.1.3需求描述缺陷
|
||
需求描述缺陷一般包括:
|
||
a)需求描述不清晰或具有二义性;
|
||
b)需求描述不正确;
|
||
c)需求描述不完备。
|
||
4.1.2设计缺陷
|
||
设计缺陷指虽然软件实现与设计文档一致,但是软件存在设计缺陷,产生潜在错误。
|
||
4.1.2.1容错与防错缺陷
|
||
容错与防错缺陷一般包括:
|
||
a)缺少对中断发生的响应设计;
|
||
b)缺少对边界条件下响应设计;
|
||
c)缺少功能、性能的降级情况设计;
|
||
d)缺少对各种误操作模式响应设计;
|
||
e)缺少对各种故障模式(如数据超范围、死锁响应设计。
|
||
4.1.2.2计算和算法设计缺陷
|
||
计算和算法设计缺陷一般包括:
|
||
a)计算和算法设计不能满足功能需求;
|
||
b)算法设计未考虑异常数据的处理。
|
||
4.1.2.3流程设计缺陷
|
||
流程设计缺陷一般包括:
|
||
a)对程序逻辑路径考虑不全面;
|
||
b)功能分支设计不完善;
|
||
c)逻辑判断不正确;
|
||
d)不正确循环;
|
||
e)重复逻辑;
|
||
f)不必要的功能。
|
||
4.1.2.4操作性和理解性缺陷
|
||
操作性和理解性方面缺陷一般包括:
|
||
a)界面设计不科学、不合理,操作性差,界面不友好;
|
||
b)输入数据未作有效性检查;
|
||
c)参数设置不易于选择,未作缺省值设计;
|
||
d)界面缺少有效提示能力;
|
||
e)缺少运行状态监控的能力。
|
||
4.1.3程序缺陷
|
||
程序缺陷指软件实现与相应的文档不一致,而文档是正确的。
|
||
4.1.3.1接口实现缺陷
|
||
接口实现缺陷一般包括:
|
||
a)接口不正确:
|
||
1)发送的报文格式与协议不一致:
|
||
2)接收正确/异常输入(报文、参数等)处理不正确,或不处理;
|
||
3)接收不同频率报文处理不正确。
|
||
b)中断处理不正确:
|
||
1)未对必要的数据或寄存器进行保护:
|
||
2)PUSH和POP操作不匹配;
|
||
3)中断嵌套考虑不全面;
|
||
4)中断处理不够精简,导致中断时间过长。
|
||
4.1.3.2数据处理缺陷
|
||
数据处理缺陷一般包括:
|
||
a)数据初始化不正确:
|
||
1)堆栈初始化不正确;
|
||
2)数组初始化不正确;
|
||
3)指针初始化不正确;
|
||
4局部变量初始化不正确;
|
||
5)全局变量初始化不正确;
|
||
6)循环变量初始化不正确。
|
||
b)数据访问或存储不正确:
|
||
1)标志或索引设置不正确;
|
||
2)压缩或解压缩数据不正确;
|
||
3)引用了错误的数据变量;
|
||
4数据引用越界;
|
||
5)共享资源冲突;
|
||
6)内存分配与使用不正确。
|
||
c)数据单位不正确:
|
||
1)计算后的数据单位不正确;
|
||
2)显示的计算结果单位不正确。
|
||
d)数据的维数不正确:
|
||
1)维数定义的类型不正确;
|
||
2)数组下标使用不正确。
|
||
e)数据范围不正确。
|
||
f)数据定义及结构不正确。
|
||
9)输入/输出数据不正确或遗漏。
|
||
h)操作数据不正确或遗漏。
|
||
4.1.3.3计算实现缺陷
|
||
计算实现缺陷一般包括:
|
||
a)计算不正确:
|
||
1)等式中操作符不正确;
|
||
2)
|
||
等式中操作数不正确;
|
||
3)
|
||
括号使用不正确;
|
||
4亮除数为零;
|
||
5)
|
||
)对负数求平方根。
|
||
b)精度缺陷:
|
||
1)
|
||
舍入进位或截断进位缺陷;
|
||
2)
|
||
混合运算缺陷;
|
||
3)
|
||
符号约定故障;
|
||
4)
|
||
常数有效位不够;
|
||
5)
|
||
定点比例尺选择不当。
|
||
4.1.3.4时序时限缺陷
|
||
时序或时限与正确的文档要求不一致,缺陷一般包括:
|
||
a)消息处理顺序不正确/不合理:
|
||
b)软件实现的运行时序不正确;
|
||
c)传输频率与规定的文档不一致;
|
||
d)I/O定时故障或不正确。
|
||
4.1.3.5边界或端点运行状态缺陷
|
||
软件处在边界或端点情况下运行状态缺陷一般包括:
|
||
a)软件的输入域或输出域的边界或端点运行状态缺陷;
|
||
b)状态转换的边界或端点运行状态缺陷:
|
||
c)功能界限的边界或端点运行状态缺陷;
|
||
d)性能界限的边界或端点运行状态缺陷;
|
||
e)容量界限的边界或端点运行状态缺陷。
|
||
4.1.3.6UT界面操作显示缺陷
|
||
UI界面实现的正确性、一致性缺陷一般包括:
|
||
a)操作和显示界面与文档要求的不一致/不符合;
|
||
b)界面文字、字符不正确;
|
||
c)界面显示风格不一致;
|
||
d)界面的菜单或功能按钮失效。
|
||
4.1.3.7编码缺陷
|
||
编码缺陷一般包括:
|
||
a)编程和程序输入错误;
|
||
b)违反编程风格或标准;
|
||
c)程序结构不正确:
|
||
1)控制流和顺序不正确;
|
||
2)程序处理不正确。
|
||
4.1.4文档缺陷
|
||
文档缺陷指软件实现与相应的文档不一致,而程序是正确的,或文档本身存在缺陷,但不影响软件
|
||
功能性能。
|
||
4.1.4.1文档一致性缺陷
|
||
文档的不一致性包含文文不一致及文实不一致,其中文文不一致是指提交文档内容描述不一致,文
|
||
实不一致是指软件实现与相应的文档不一致,而程序是正确的。
|
||
一致性缺陷一般包括:
|
||
a)文档内容、缩略语及术语的含义前后不一致;
|
||
b)文档与程序实现不一致;
|
||
c)书面文档与联机帮助文档不一致;
|
||
d)文档之间描述不一致。
|
||
4.1.4.2文档完整性缺陷
|
||
文档完整性包含了文档章节内容的完整性及软件需求描述的完备性。
|
||
完整性缺陷一般包括:
|
||
剪是否满足相关要求);
|
||
b)文档封面内容是否完整、正确,是否包括了文档名称、版本、密级、编号、单位、编写时间;
|
||
c)文档签署是否完整,包括拟制、审核、批准等信息。
|
||
4.1.4.3文档准确性缺陷
|
||
文档准确性指文档内容是正确的,且在技术上和法律上是可行的。
|
||
文档准确性缺陷一般包括:
|
||
a)存在有二义性的定义、术语或内容;
|
||
b)描述文档内容不正确、不准确(例如需求描述是不可实现的/不可测试的);
|
||
c)存在错别字,影响对文档理解。
|
||
4.2质量属性类
|
||
4.2.1功能实现缺陷
|
||
功能实现与正确的文档要求不一致,缺陷一般包括:
|
||
a)功能缺失:需求中明确要求的功能未在系统中实现;
|
||
b)逻辑错误:功能流程或业务规则实现错误,导致输出结果异常;
|
||
c)接口不一致:模块间接口定义与实现不一致,导致数据传递失败;
|
||
d)边界条件处理缺陷:未正确处理输入值的边界情况(如极值、空值、非法字符);
|
||
e)异常处理:异常条件未处理或处理不正确;
|
||
)状态管理缺陷:系统状态(如登录状态、事务状态)切换错误或未同步。
|
||
4.2.2性能实现缺陷
|
||
软件性能实现不满足指标要求,缺陷一般包括:
|
||
a)处理精度:处理精度不满足指标;
|
||
b)负载能力:负载能力不满足指标;
|
||
c)高延迟缺陷:用户操作或请求响应时间过长,超出可接受范围;
|
||
d)资源泄漏缺陷:未正确释放内存、连接或文件句柄,导致资源耗尽;
|
||
e)并发处理缺陷:高并发场景下系统吞吐量下降或出现错误;
|
||
)扩展性缺陷:系统无法通过增加资源(如服务器节点)线性提升性能;
|
||
9)配置优化缺陷:代码或环境配置未针对性能优化,如缓存策略、索引缺失。
|
||
4.2.3安全缺陷
|
||
安全缺陷一般包括:
|
||
a)认证与授权缺陷:用户身份验证或权限管理机制的漏洞;
|
||
b)输入验证缺陷:未对用户输入进行有效过滤或验证,导致注入攻击;
|
||
c)加密缺陷:数据加密或传输过程中的安全漏洞;
|
||
d)访问控制缺陷:权限管理不当,导致未授权访问敏感功能或数据;
|
||
e)日志与监控缺陷:缺乏安全事件记录或实时监控,无法及时发现攻击行为。
|
||
4.2.4兼容性缺陷
|
||
兼容性缺陷一般包括:
|
||
a)浏览器兼容性缺陷:页面或功能在不同浏览器内核(如Chrome、Firefox、Safari)中表现异常;
|
||
b)操作系统兼容性缺陷:系统行为因操作系统版本(如Windows、macOS、Linux)不同而产生差
|
||
c)设备适配缺陷:界面或功能在不同设备类型(PC、平板、手机)或分辨率下适配不良;
|
||
d)第三方依赖缺陷:因外部库、框架或服务版本更新导致的兼容性问题;
|
||
e)区域化缺陷:本地化配置(如语言、时区、货币格式)引发的问题。
|
||
4.2.5可靠性缺陷
|
||
可靠性缺陷一般包括:
|
||
a)容错性缺陷:系统对异常输入或环境变化的处理能力不足;
|
||
b)恢复性缺陷:故障后无法自动恢复或恢复流程不完整;
|
||
c)稳定性缺陷:长时间运行后出现性能下降或内存泄漏;
|
||
d)并发性缺陷:多用户/线程同时操作时出现竞态条件或死锁。
|
||
4.2.6易用性缺陷
|
||
易用性缺陷一般包括:
|
||
a)导航缺陷:用户难以找到关键功能或返回路径;
|
||
b)反馈缺陷:操作后无明确状态提示或错误信息模糊;
|
||
c)一致性缺陷:同一功能在不同页面的设计或术语不一致;
|
||
d)无障碍缺陷:不符合WCAG标准,影响残障用户使用。
|
||
4.2.7可维护性缺陷
|
||
可维护性缺陷一般包括:
|
||
a)代码可读性缺陷:代码命名混乱、缺乏注释或模块化不足;
|
||
b)耦合性缺陷:模块间过度依赖,修改一处引发多处错误;
|
||
c)配置缺陷:硬编码参数或配置分散,难以调整;
|
||
d)测试覆盖缺陷:关键逻辑缺乏单元测试或测试用例过时。
|
||
4.2.8可移植性缺陷
|
||
可移植性缺陷一般包括:
|
||
a)平台依赖缺陷:代码或组件绑定特定操作系统或硬件;
|
||
b)环境配置缺陷:系统对运行时环境(如JDK版本、库依赖)敏感;
|
||
c)数据迁移缺陷:数据格式或存储方式导致跨平台迁移失败;
|
||
d)本地化缺陷:语言、时区或区域设置未适配目标市场。
|
||
5软件测试缺陷严重等级
|
||
软件缺陷按其影响严重程度分为:致命(P0)、严重(P1)、一般(P2)、轻微(P3)四个等级。
|
||
5.1致命(PO)
|
||
妨碍运行或任务的主要功能的完成;妨碍操作员完成运行或任务的主要功能。
|
||
一般包括:
|
||
a)软件系统崩溃、主要功能完全丧失等;
|
||
b)软件主要任务没有实现;
|
||
c)软件无法通信,导致主要任务数据无法传输;
|
||
d)软件主要任务数据丢失;
|
||
e)设计架构存在致命缺陷,导致主要任务失败。
|
||
5.2严董(P1)
|
||
对运行或任务的主要功能的完成造成不利的影响,以致降低效能,且没有变通的解决办法;给操作
|
||
员完成由基线要求所规定的运行或任务的主要功能造成不利的影响,以致降低效能,且没有变通的
|
||
解决办法。
|
||
一般包括:
|
||
a)影响软件基本能力的实现,且没有已知的变通解决方案;
|
||
b)软件性能指标不满足要求;
|
||
c)软件主要功能部分丧失,次要功能全部丧失;
|
||
d)设计架构存在严重缺陷,导致主要功能无法实现;
|
||
e)软件主要功能在文档中描述不正确。
|
||
5.3一般(P2)
|
||
对运行或任务的主要功能的完成造成不利的影响,以致降低效能,但已知有变通的解决方法;给操
|
||
作员完成由基线要求所规定的运行或任务的主要功能造成不利的影响,以致降低效能,但已知有变通的
|
||
解决办法。
|
||
一般包括:
|
||
a)软件次要功能实现不完整或不正确,或影响软件基本能力的实现,但已知变通方案;
|
||
b)软件接口实现与协议不一致;
|
||
c)软件界面显示不正确(包括页面刷新有残留等);
|
||
d)文档存在文文不一致、文实不一致等错误;
|
||
e)存在控制流、数据流等代码方面错误:
|
||
)软件边界数据或状态未处理或处理不正确;
|
||
9)软件对异常条件(包括操作、数据、命令、通信频率等)未处理或处理不正确;
|
||
h)除致命、严重、轻微外的其他缺陷。
|
||
5.4轻微(P3)
|
||
给操作员带来不方便或麻烦,但不影响所要求的运行或任务的主要功能;所有的其他错误。即对功
|
||
能几乎没有影响的缺陷。
|
||
一般包括:
|
||
a)文档存在文字、排版等小缺陷;
|
||
b)界面存在错别字、显示位置不友好;
|
||
c)错误提示信息不合理/不友好。
|