
GB/T 25000.51-2016《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第51部分:就绪可用软件产品(RUSP)的质量要求和测试细则》是软件测评机构出具CMA/CNAS软件测试报告所依据的一部国家标准。本文我们跟大家分享,依据GB/T25000.51-2016如何开展软件测试,有哪些测试指标?怎么测?
GB/T25000.51-2016共7章和两个附录。
前4章为标准的一些基本要素。第1章为标准的范围,第2章为RUSP 的符合性,第3章为规范性引用文件,第4章为标准用到的术语、定义和缩略语。
第5~7 章为标准的主体内容。
章节 | 内容 |
|---|---|
1、范围 | 说明了标准规定的内容及标准使用对象,及标准的用途 |
2、符合性 | 说明了RUSP符合本标准的条件 |
3、规范性引用文件 | 说明了本标准引用的标准文件25000.10 |
4、术语和定义、缩略语 | 说明了本标准的相关术语、定义、缩略语 |
5、RUSP的要求 | 说明了RUSP的质量要求:产品说明、用户文档、软件质量 |
6、测试文档集要求 | 说明了用于测试RUSP的测试文档集要求 |
7、符合性评价细则 | 说明了RUSP软件产品的符合性评价细则 |
就绪可用软件产品(RUSP--Ready to Used Software Product)定义:无论是否付费,任何用户可以不经历开发活动就能获得的软件产品(开源软件除外)。
就绪可用软件产品包括:
1、产品说明;
2、用户文档集,包括为运行该软件产品所要求的操作系统或目标计算机的任何配置;
3、计算机媒体上的软件。
下面的内容,我们重点介绍,如何依据GB/T25000.51-2016《系统与软件工程 系统和软件质量要求与评价(SQuaRE)第 51 部分:就绪可用软件产品(RUSP)的质量要求和测试细则》开展软件测试。
软件产品的功能性要求:在指定条件下使用时,产品或系统提供满足明确和隐含要求的功能的程度。
主要包含四个方面:完备性、正确性、适合性、依从性。
完备性:软件是否实现了预期的所有功能。
即需求规格说明书或其它技术说明书中有关软件功能需求在软件中被完整实现的情况,包括明确的功能和隐含的功能。
如,OA系统的用户管理功能,即使需求中没有明确要求,实际开发完成的软件也需要有用户管理功能。
正确性:软件的各功能运行是否正确、精度是否符合要求。
即各功能的运行结果、精度是否与预期的结果相符,包括软件功能性的限制条件。
如:业务规则的限制、字符串长度的限制、数字精度的限制、数据格式的限制等要求。
适合性:软件的各功能是否适合用户的要求,按照用户的预期来运行,是否只提供必要的功能操作步骤。
即软件的各功能是否完全按照需求规格说明书、用户操作手册的规定运行的。
如,查询结果要显示信息1、2、3,且按照时间顺序排序等。
依从性:软件的功能是否符合相关标准、法规的要求。
如,公积金中心所建设的公积金综合服务平台,相关功能需要符合住建部《住房公积金综合服务平台建设导则》的要求。
软件产品的性能效率与在指定条件下所使用的资源量有关。
主要包括:时间特性、资源特性、容量、依从性四个方面。
首先我们先来看一下时间特性。
时间特性:时间特性指的是产品或系统执行其功能时,其响应时间、处理时间及吞吐率满足需求的程度。
主要体现在软件功能操作的响应时间、处理时间、吞吐率是否符合预期的要求。即响应时间、处理时间、吞吐率是否符合需求规格说明书中的要求。
响应时间是指用户发起一个请求开始,到接收到处理结果所经历的时间。处理时间是服务器端处理请求的时间。
吞吐率是指单位时间内系统处理的客户请求的数量。可用请求数/秒或页面数/秒、访问人数/天或处理的业务数/小时、字节数/天等单位来考察网络流量。
资源利用性:指的是时间特性指的是产品或系统执行其功能时,所使用资源数量和类型满足需求的程度。
主要体现在服务器端的资源利用率是否符合预期要求。
一般是指服务器硬件资源利用率,包括:CPU利用率、可用内存、磁盘I/O、带宽等指标。
也可指相关软件的资源利用率,如数据库的数据缓冲命中率等。
资源利用率指标并不是越高越好,应保持一定余量;同时也不是越低越好,这样也造成资源浪费。
容量:指的是产品或系统参数的最大限量满足需求的程度。
也就是软件的最大容量是否符合预期的要求,包括软件所能支撑的最大并发用户数、可存储的最大数据量、数据处理容量、最大的交易吞吐量等。
交易吞吐量,如,TPS达到100笔/秒;数据处理容量,如,大数据平台每秒处理的数据量达到10万条。
依从性:指的是产品或系统遵循与性能效率相关的标准、约定或法规以及类似规定的程度。
简而言之就是软件功能运行效率是否符合相关标准、法规的要求。
软件产品的兼容性测试指的是在共享相同的硬件或软件环境的条件下,产品、系统或组件能够与其他产品、系统或组件交换信息,和/或执行其所需要的功能的程度。
主要包括三个方面:共存性、互操作性和依从性。
首先我们一下看一下共存性。
共存性:是在与其他产品共享通用的环境和资源的条件下,产品能够有效执行其所需的功能并且不会对其他产品造成负面影响的程度。
通俗点讲,就是被测软件和其他软件在同一个软硬件环境下是否可以共存(或者说相互不影响)。
如,我们的OA系统与CRM系统部署在同一台服务器上,两者可以共存运行。
互操作性:指的是两个或多个系统、产品或组件能够交换信息并使用已交换的信息的程度。
也就是软件是否可以与其它系统或组件进行信息交换,并使用交换的信息进行正常的信息处理。
包括:数据格式的可交换性,如,软件支持.xlsx、.docx文件的导入导出等;
数据传输的交换接口:在与其他软件进行通信时,交换接口的功能是否能正确实现,如:OA系统与CRM系统可交换客户信息等。
依从性:指的是产品或系统遵循与兼容性相关的标准、约定或法规以及类似规定的程度。
也就是软件是否符合相关标准、法规的兼容性要求。
软件产品的易用性指的是,在指定的使用周境中,产品或系统在有效性、效率和满意度特性方面为了指定的目标可为指定用户使用的程度。
包含:可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性、易访问性、依从性七个方面。
可辨识性:指的是软件的各功能及界面中的输入输出项是否易于识别。
包括:软件功能界面文字描述完整清晰,不含不易理解的词语,便于用户辨识软件是否适合他们的要求;
软件提供产品介绍演示功能,便于用户辨识软件是否适合他们的要求。
易学性:指的是软件功能操作是否简单易学。
包括:指导性,软件提供在线帮助、操作指导视频等,指导用户学习使用;
输入字段的默认值,功能操作给出输入字段默认值,有助于初学者全面、快速地学习如何操作产品;
差错信息的易理解性,软件功能操作的错误提示信息给出差错原因及解决方法;
用户界面的自解释性,软件功能操作界面中给出清晰的步骤指示。
易操作性:指的是软件功能是否易于操作,操作是否可控。
包括:消息明确,软件功能操作的提示信息、给用户传达的结果或指令消息明确,指导用户使用;
可定制性,用户可根据需要定制功能、定制界面信息;
撤销操作,对于关键操作可以撤销;输入设备支持性,可键盘、鼠标、语音输入。
用户差错防御性:指的是软件有相应的措施来避免用户进行错误的操作。
包括:抵御误操作,在执行无法撤销并且会产生严重后果的操作之前要求进行确认;
用户连续提交订单,软件阻止用户再次提交;
输入差错纠正:阻止用户的输入差错,如,输入不正确的数据类型、超长的字符、身份证号位数不对、截止时间早于起始时间等;
与可靠性中的容错性相比较,用户差错防御性更注重于界面功能对于防止用户差错。
用户界面舒适性:指的是软件功能操作界面是否让用户感到舒适。
包括:功能界面布局整理、合理;界面颜色、字体大小合适;界面字体、图片清晰,没有乱码。
易访问性:指的是软件是否易于各种用户群体访问。
包括:特殊群体易访问,如认知障碍、生理缺陷、听觉/语音障碍和视觉障碍的用户;
支持的语种充分性,支持多种不同的语言时,方便不同语种用户访问。
依从性:指的是软件的功能是否符合相关标准、法规对易用性方面的要求。
如医院的HIS系统,软件功能操作需要符合医疗行业相关规范的易用性要求。
可靠性指的是系统、产品或组件在指定条件下、指定时间内执行指定功能的程度。
软件产品的可靠性包括:成熟性、可用性、容错性、易恢复性和依从性。
成熟性:指的是系统、产品或组件在正常运行时满足可靠性要求的程度。
也就是软件在各种正常运行的情况下是否可靠运行。
包括:大负载压力情况下;大数据量下软件是否可靠运行。
可用性:指的是系统、产品或组件在需要使用时能够进行操作和访问的程度。
通俗来讲就是软件是否连续可用。
如:系统可用性,如7*24小时;平均宕机时间,如,全年宕机时间小于1小时。
容错性:指尽管存在硬件或软件故障,系统、产品或组件的运行符合预期的程度。
通俗讲就是软件在遇到软硬件故障时,有相应的容错措施来避免软件运行失效。
包括:硬件故障,如,服务器宕机、断电、断网等,硬件故障恢复后,软件不能出现运行失效现象;
软件故障,如,软件处理异常输入数据,不能出现运行失效的现象。
易恢复性:指在发生中断或失效时,产品或系统能够恢复直接受影响的数据并重建期望的系统状态的程度。
也就是软件在出现失效后是否可以恢复原有的正常状态。
包括:平均恢复时间,系统宕机后的恢复所需时间长短。
如20分钟;数据备份完整性,定期备份的数据项是否完整。
依从性:指产品或系统遵循与可靠相关的标准、约定或法规以及类似规定的程度。
也就是软件的功能是否符合相关标准、法规对可靠性方面的要求。
信息安全性指的是产品或系统保护信息和数据的程度,以使用户、其他产品或系统具有与其授权类型和授权级别一致的数据访问度。
主要体现在以下几个方面:保密性、完整性、抗抵赖性、可核查性、真实性、依从性。
保密性:指的是产品或系统确保数据只有在被授权时才能被访问的程度。
也就是软件的数据是否只有被授权的用户进行访问。
包括:访问控制性,设置访问控制矩阵,控制用户对信息或数据的访问;
用户权限遵循“最小权限原则”等;
数据加密正确性,是否按照需求规格说明中的要求, 对数据项进行了加密处理,包括数据传输、数据存储;
加密算法的强度,是否采用了不安全的加密算法,如DES等。
完整性:指的是系统、产品或组建防止未授权访问、篡改计算机程序或数据的程度。
也就是软件是否可以防止数据被篡改。
包括:数据传输完整性,使用散列算法对传输数据进行加密;
数据存储完整性,采用关系型数据库保存数据,比如Oracle数据库,增加数据完整性约束,如唯一键、可选值、外键等;
实现事务的原子性,避免因为操作中断或回滚造成数据不一致,完整性被破坏。
抗抵赖性:指的是活动或时间发生后可以被证实且不可被否认的程度。
也就是软件的功能操作是否具有抗抵赖性。
包括:使用数据签名,关键的功能操作是否采用使用了数字签名。
可核查性:指的是实体活动可以被唯一地追溯到该实体的程度。
可以这么理解:软件的功能操作是否可以被唯一的追溯。
包括:用户操作日志,软件是否按照需求对用户功能操作进行了日志记录,且日志记录信息是否齐全,包括事件日期、时间、发起者信息、类型、描述和结果等。
真实性:指的是对象或资源的身份标识能够被证实符合其生命的程度。
可通俗理解为软件是否有相应措施来保证对象或资源的身份标识是真实的。
包括:身份鉴别,系统提供专用的登录控制模块对登录用户进行身份标识和鉴别,使用双因子身份鉴别等。
依从性:指的是产品或系统遵循与信息安全性相关的标准、约定或分轨以及类似规定的程度。
也就是软件的功能是否符合相关标准、法规对信息安全性方面的要求。
如,电力行业的相关标准对系统有特定的安全要求。
软件产品的维护性指的是产品或系统能够被预期的维护人员修改的有效性和效率的程度。
主要包含:模块化、可重用性、易分析性、易修改性、易测试性、依从性,六大部分。
模块化:由多个独立组建组成的系统或计算机程序,其中一个组件的变更对其他组件的影响最小的程度。指的是软件是否由独立的组件组成。
即软件是否采用了模块化设计,如微服务架构、SOA架构等。
可重用性:资产能够被用于多个系统,或其他资产建设的程度。
指的是软件的模块是否可重用于其它系统中。松耦合的模块便于用于其它系统中。
易分析性:可以评估预期变更(变更产品或系统的一个或多个部分)对产品或系统的影响、诊断产品的缺陷或失效原因、识别待修改部分的有效性和效率的程度。
实现包括为产品或系统提供机制,以分析其自身故障以及在失效或其他时间前提供报告。
通俗地讲,指的是软件在出现运行失效,或被修改时,是否易于诊断分析缺陷或修改的有效性。
包括:日志信息,针对软件被修改或运行出现错误时,给出相应的日志信息,便于识别修改的有效性和出现错误的原因。
诊断功能,软件提供诊断功能,对软件功能运行的状态信息进行跟踪,便于诊断分析问题。
易修改性:产品或系统可以被有效地、有效率地修改,且不会引入缺陷或降低现有产品质量的长度。
实现包括编码、设计、文档和验证的变更。模块化和易分析性会影响到易修改性。
易修改性是易改变性和稳定性的组合。
我们可以这样通俗地理解,易修改性指的是软件是否可以被方便地修改,以满足新的功能需求。
包括:对系统参数进行配置;对用户权限进行修改;对业务流程进行修改。
易测试性:能够为系统、产品或组件建立测试准则,并通过测试执行来确定测试准则是否被满足的有效性和效率的程度。
指的是软件在变更或维护后应能方便地进行测试。
如:软件变更数据库后,提供测试功能,验证数据库是否可以成功连接。
依从性:产品或系统遵循与维护性相关的标准、约定或法规以及类似规定的程度。
也就是软件的功能是否符合相关标准、法规对维护性方面的要求。
软件产品的可移植性指的是系统、产品或组件能够从一种硬件、软件或者其他运行(或使用)环境迁移到另一种环境的有效性。
主要包含四个方面:适应性、易安装性、易替换性、依从性。
适应性:产品或系统能够有效地、有效率地适应不同的或演变的硬件、软件或者其他运行(或使用)环境的程度。
适应性包括内部能力(例如屏幕域、表、事务量、报告格式等)的可伸缩性。
适应包括那些由专业支持人员实施的,以及那些由业务或操作人员,或最终用户实施的。
如果系统能被最终用户所适应,那么适应性就相当于IOS 9241-110中所定义的个性化的适宜性。
我们通俗一点讲,适应性就是软件是否可移植到其它硬件、软件环境中运行。
包括:产品或系统适应软硬件变化的能力,包括硬件环境、操作系统、数据库管理系统、浏览器、支撑软件的适应性。
硬件环境的适应性,如不同的服务器、存储设备、辅助设备(如打印机、扫描仪等)等;
软件的适应性:不同的操作系统类型和版本、不同的数据库类型和版本、不同的浏览器和版本等。
易安装性:在指定环境中,产品或系统能够成功地安装和/或卸载的有效性和效率的程度。
如果系统或产品能被最终用户所安装,那么易安装性会影响到所产生的功能合适性和易操作性。
简单来说就是软件是否易于安装、卸载。安装,软件是否可以一键安装,或自定义安装等;卸载,软件是否可以一键卸载等。
易替换性:在相同的环境中,产品能够替换另一个相同用途的指定软件产品的程度。
软件产品的新版本的易替换性在升级时对于用户来说是重要的。
易替换性可包括易安装性和适应性的属性,鉴于其重要性,易替换性作为一个独立的子特性被引入。
简单地理解,易替换性指的就是是软件是否易于升级替换。
包括:升级,是否可以在线升级,是否可以自动升级;
覆盖安装,是否可以覆盖安装;
数据复用,软件被替换后,原数据是否仍然可以使用。
依从性:产品或系统遵循与可移植性相关的标准、约定或法规以及类似规定的程度。
这点跟其他特性一样,也就是软件的功能是否符合相关标准、法规对可移植性方面的要求。
以上就是针对25000.51标准的解读,如需具体的作业指导书和测试用例,可v我获取。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。