软件测试体系建设指南,从规划到落地

49 阅读9分钟

本文们介绍的是建设一个专业的第三方软件测试机构,如何去建立规范科学的软件测试体系。从流程架构到测试方法,再到人员、环境、设备的准备。

一、软件测试体系中的标准流程

第三方软件检测机构的测试流程一般会有13个,从前期的客户沟通到业务受理,到最终的报告存档。

1、客户沟通

软件测试实验室接待人员应向客户介绍机构的法律地位、能力范围、工作程序、收费标准、服务承诺,通过有效沟通建立与客户间的信任,准确识别客户的全部需求。

2、业务受理

确认能完全满足客户的检测需求,样品状态符合检验检测要求。指导客户填写送样检验检测合同书。软件测试合同评审。核对合同相关信息并签字/盖章确认。

3、抽样

制定抽样方案,准备抽样文书、工具,确定抽样人员,抽样实施与记录。样品防护、运输与保存。

第三方软件测试机构在实际的操作过程中,涉及到抽样的业务较少,必要时也需要编写抽样程序指导抽样工作。

4、样品接收与标识

检查样品状态、样品数量、保存状态等内容。对样品分类、编号、加贴样品标识、登记。最后下达检测指令。

业务受理部门要合理调配检测资源,给相应的测试部门下达指令,完成样品交接。

测试指令应明确软件测试任务编号、软件测试项目、软件测试依据、完成时限及样品相关信息,内容应准确、清晰、完整。有分包测试项目的,应联系分包机构进行测试。

5、样品流转

对单一样本和分割子样的标识转移。样品在待检、在检、检毕、退库、处置等各交接环节,对相关信息进行核对、记录。

接收样品时,应检查样品是否与测试指令相符;样品是否有可见异常;资料是否完整、有效。必要时可开封检查样品的型号规格、数量等相关信息。

软件测试完成后的样品,必须及时退回样品管理部门保存,履行样品退库手续。应维护、监控和记录环境条件。样品应有流转记录,整个流转过程应在流转记录中予以记载。

6、测试准备

在该环节,需要准备开展软件测试所需要的资源,包括:人员的数量、技术能力资格;设备的配置及状态;测试所需的物资;测试方法、记录;测试环境及设施;软件测试所需的各种技术文件、资料;样品的安装调试、前处理或状态调节;

7、样品测试

CNAS软件测试实验室检测人员接到任务后,检查指令文件、样品状态及所附技术资料的一致性,不一致或有疑问时均应向任务下达部门提出,合理处置后方可进行软件测试。

对测试过程中首次出现的不合格项目,如果检测数据可再现,应对检测资源(如人员、设备、材料、方法、环境等)确认无误的情况下,进行复测。

复测结果与首次检测结果可印证的,复测数据作为报出结果,复测情况必须在原始记录上得到记载。

8、原始记录及校核

室原始记录应实时记录检测活动全过程各环节,包括原始观察、导出数据等,应真实、齐全、清晰,包含足够信息,满足复现性和可追溯性。

9、CNAS软件测试报告的编制、审核和签发

软件测试报告从编制到发放,一共需要经历5个环节:编制、报告审核、报告批准、报告签章、报告发放。

10、样品处置

样品处置按规定程序或约定方式进行,处置过程应予以记录。

11、报告存档

CNAS软件测试实验室应将每一次检验检测的合同书、检验检测原始记录、报告等一并归档。

12、投诉处理

在这过程中,如果出现了投诉,实验室接到投诉应收集并验证所有必要信息以确认投诉是否有效。跟踪并记录投诉,包括为解决投诉所采取的措施,并全部归档。

13、报告更正或增补

当需要对已发出的结果报告做更正或增补时,应按规定的程序执行,详细记录更正或增补的内容,重新编制新的更正或增补后的软件测试报告,并注以区别于原测试报告的唯一性标识。

二、软件测试体系中的标准方法

正确的检测方法是获得有效的、可靠的和可重现的检测结果的重要前提,也是CNAS软件测试实验室建立测试技术体系的基础。在方法的选择上,优先推荐使用以国际标准、区域标准或国家标准发布的方法。软件检测机构在建立软件测试体系时,可以参照的标准主要可以分为三大类:

1、通用软件的测试

依据GBT 25000.51《系统与软件工程系统与软件质量要求和评价(SQuaRE)的质量要求和测试细则》给出了8个测试项目:软件产品功能性检测、软件产品性能效率检测、软件产品兼容性检测、软件产品易用性检测、软件产品可靠性检测、软件产品信息安全性检测、软件产品维护性检测、软件产品可移植性检测。

2、软件代码测试

软件代码测试根据代码的编程语言不同,分为:C/C++语言源代码漏洞测试、Java语言源代码漏洞测试、和C#语言源代码漏洞测试。依据的国标分别是:GB/T 34943-2017《C/C++语言源代码漏洞测试规范》、GB/T 34944-2017《Java语言源代码漏洞测试规范》和GB/T 34946-2017《C#语言源代码漏洞测试规范》。

3、行业软件测试

像嵌入式软件一般依据国军标GJB-Z-141-2004《军用软件测试指南》、物联网类软件一般依据欧标ETSI EN 303 645:2020 《消费型物联网产品信息安全标准》等。

三、软件测试体系中的资源配置

资源配备方面,可以从人员、设备、环境这几个方面去考虑。

1、软件测试体系中的人员

第三方软件测试机构的人员组成一般包括最高管理者、质量负责人、技术负责人、软件测试工程师等,如果要申请CNAS/CMA资质,人员需要具备一定的资质。从事软件测试人员,应具有计算机及相关专业的大专(含)以上学历、并获得国家或行业承认的软件测试技术专业培训合格资质或计算机软件相关专业的高级工程师,具备与软件测试任务相适应的被测试软件背景知识和软件测试技术。

从事软件测试项目管理、测试需求分析、测试策划和测试设计活动的人员,一般应有 2 年(含)以上软件开发工作经历或 3 年以上软件测试技术工作经历;

软件测试执行人员,一般应有 3 个月(含)以上软件测试技术岗位实习工作经历,并至少实习完成 1 个软件测试项目;

负责软件测试结果评价(评估)、方法确认、质量核查的人员,以及软件测试报告审核人和批准人,一般应有 3 年(含)以上软件测试技术工作经历。

2、软件测试体系中的环境

对相关区域进行有效隔离,采取措施消除影响,这里的隔离不止物理空间上的隔离还包括网络隔离。测试场地一般应具备防静电、电源故障保护措施。应有防止计算机病毒、木马程序等事项不良程序交叉感染测试环境,如防病毒软件的升级及记录。

3、软件测试体系中的设备

检验检测机构应当具备从事检验检测活动所必需的检验检测设备设施。设备方面主要可以归纳为2个方面,一方面硬件设备,另一方面是软件设备。

在测试设备方面,软件测试实验室测试设备可包括测试工具软件以及计算机系统、网络系统、适配器、测试输入和结果输出等硬件设备。

对于软件设备来说通常,软件实验室在进行基于GB/T25000.51等相关标准进行资质申请时,建议要配备的测试设备有,针对性能测试需要配备LoadRunner。

如果申请的范围中包含信息安全测试,还需要配备一款漏洞扫描工具。

漏洞扫描工具的选型需要与后续要开展的业务相结合,如部分工具更加侧重于嵌入式系统,有些工具在通用软件领域更加出色,还有很多工具无法适配国产化的要求,在选型的过程中需要做好针对工具的调研。

除此之外,软件检测领域跟其他领域不同的是,软件检测领域对仪器的依赖远小于对人的依赖。对人的依赖性强,要做到测试结果的可重复性和可重现性就会很难。 这就要求我们做好过程管理,通过证据链的可溯源性实现测试结果的公正性与可靠性。所以建议有条件的实验室最好也需要配备一款专业的测试管理工具。

以上就是针对软件测试体系建设的介绍,包括流程、方法、资源等方面的介绍,希望能够对您有所帮助,如需软件检测实验室质量管理体系文件模板、软件检测作业指导书、设备配置方案与参数比对等资料,可随时联系我。

image.png