企业数字化转型中软件测试的效能提升方法

2021-03-11 03:34甘丽清张媛董丽娟杨军郭晓娟
电子技术与软件工程 2021年21期
关键词:测试人员软件测试出厂

甘丽清 张媛 董丽娟 杨军 郭晓娟

(北京中电普华信息技术有限公司 北京市 100192)

随着近年来新一轮信息技术革命蓬勃发展,全球进入数字化经济时代。2020年8月21日,国资委下发《关于加快推进国有企业数字化转型工作的通知》,为国有企业数字化转型工作指明了发展方向,强调“使用安全可靠的设备设施、工具软件、信息系统和服务平台,提升本质安全”[1]。

我国电力信息化源于电力系统的计算及发电厂和变电站的自动监测、监控等方面,20世纪80年代中期开始进入电网调度自动化、电力负荷控制以及企业管理等多个应用领域[2]。国家电网公司高度重视数字化转型工作,其下属某企业自成立以来深度参与国家电网公司信息化建设,承担大量系统研发、建设和实施工作,近年来持续推进数字化转型发展。为提升软件产品研发质量,该公司于2014年成立软件测试实验室,负责公司软件产品出厂测试工作。该实验室基于ISO9001、CMMI、ISO25000 等标准和要求持续改进,于2019年获得CNAS 资质,并聚焦“人、流程、技术和管理”四个方面推动测试效能提升,助力软件产品质量提升,效果显著。

1 加强宣贯培训,提升人员研发测试能力

研发测试效能提升,人是决定性因素,每个岗位的人员都很重要,且不能局限于专业能力,更应该重视综合能力[3]。既要抓实验室测试人员能力提升,也要加强对事业部的培训指导,促进测试赋能研发。

1.1 提升测试人员能力

实验室每周组织测试人员培训,学习研发技术,跟进第三方测试标准和方法,研讨测试技术问题和管理流程优化措施,确保测试人员能力整体提升,保证执行标准一致,打造一支全功能、学习型测试团队。

1.2 提升开发人员能力

实验室每月对事业部开展线下培训,就常见研发测试问题、第三方测试标准等进行详细讲解,确保每个月新提测项目的研发人员培训到位,推动测试赋能研发。

1.3 注重知识总结与传递

一方面,及时总结问题缺陷规避和解决方案,共享给各事业部;另一方面,借助该公司自研培训平台录制培训课件,根据岗位设计培训课程,提高培训针对性。质量风险揭示的越早、越快,产品越好、项目风险越小、成本越低。

2 优化测试流程,提升研发测试质效

目前业内主要软件测试过程模型有V 模型、W 模型、H 模型、X 模型等,该公司借鉴V 模型和并行“与”模型[4],根据业务实际和测试管理需求,制定测试流程并持续优化。通过多年实践,将公司承建的国家电网公司信息化系统分为首次发布系统和版本升级两大类别,分别制定管控方式,分类管控,提升测试质效。

2.1 首次发布系统测试流程

系统首次发布时,执行首次发布流程,通常包括公司出厂测试、上级单位抽检、第三方测试,流程见图1。如果客户无第三方测试要求,可以不执行。

图1:首次发布系统测试流程

2.2 升级版本测试流程

系统升级发布时,执行升级发布流程,通常仅包括公司出厂测试,出厂测试通过后发布上线。如果客户要求第三方测试,按客户要求执行。

3 强化技术对标,提升测试规范性

标准决定质量,没有标准就没有质量,没有高标准就没有高质量。为确保测试过程规范性和测试结果有效性,测试实验室基于《GB/T 29831-2013 系统与软件功能性》、《GB/T 29832-2013 系统与软件可靠性》、《GB/T 29833-2013 系统与软件可移植性》、《GB/T 29835-2013 系统与软件效率》、《GB/T 25000.51-2016 系统与软件工程 系统与软件质量要求和评价(SQuaRE)第51 部分:就绪可用软件产品(RUSP)的质量要求和测试细则》、《Q/GDW 1929.5-2013 5.2 信息系统 应用安全第5 部分:代码安全检测》等标准开展测试工作。

3.1 严格测试准入要求

为控制产品的提测质量,节约测试周期和成本,规定产品出厂测试的准入要求,检查表见表1,准入检查通过后方可开展测试,否则返至事业部修改。

表1:出厂测试准入检查表

3.2 明确出厂技术标准

为控制发布出厂产品质量,降低出厂产品交付风险,制定相关质量指标。实验室对于待出厂产品的质量评价定义了三个级别,即:

(1)质量良好,允许出厂;

(2)质量达标,允许带风险出厂;

(3)质量不达标,不允许出厂。

为能准确划分以上三个级别,将质量指标划分为基本指标和高级指标两类。当产品质量满足基本指标和高级指标时,评价为质量良好;当产品质量满足基本指标,但不满足高级指标,评价为质量达标;当产品质量不满足基本指标时,评价为质量不达标,详见表2。

表2:产品质量评价指标

3.3 善用测试工具

软件测试工程必须使用测试工具,包括测试工具和管理工具[5]。目前常见的测试工具有checkmarx、fortify、Burp Suite、Nmap、AppScan、Sqlmap、Loadrunner、Xshell 等,这些软件有商用有开源,功能不一,根据工具特性使用可有效提升测试效率和效果。测试实验室还自主研发了自动化测试平台(UTP),集UI 测试、接口测试、单元测试、移动测试及安全测试为一体,该平台有效解决了测试资源利用不足、手工测试不充分等问题,极高了测试效率和测试覆盖率。

在管理工具方面,实验室使用云效、RTC 等工具进行缺陷管理,研发测试全过程规范、有效。

4 精进测试管理,提升测试策略有效性

4.1 合理运用测试策略

软件测试实施过程中,要根据项目实际情况制定合理的测试策略[6],使用正确的测试方法和技术,协调测试资源,确保测试质量和效率。

测试策略的运用,就是综合起来就是根据测试范围,从业务、技术和管理维度制定测试策略,合理安排测试资源,推进测试进度,保证高质量测试交付。

4.2 建立研发质量考核机制

为强化测试过程执行的规范性,正面引导各事业部发挥积极性,该公司建立基于测试结果的考核驱动策略。由质量管理部门依据测试结果数据,对事业部和测试实验室进行考核评价。其中,处罚类考核指标分为严重违规项和一般违规项,奖励类指标包括测试轮次、测试周期、缺陷率和知识贡献等。

度量和考核从来不是目标,而是实现目标的手段。度量和考核是为目标服务的,所以一定要对目标有正向牵引的作用[7]。如果度量和考核对目标的负向牵引大于正向牵引的话,这样的度量和考核本质上就是失败的,需要立即调整。

4.3 探索研发测试融合

软件产品质量不是测试测出来的,而是构建出来的,缺陷预防比发现缺陷更有价值,研发人员比测试人员在质量上能发挥更大的作用、做出更大的贡献。

目前该公司正在开展研发测试融合试点工作,从需求开始就将高质量构建在产品中,做好需求、设计、研发、测试等各环节,以此推动研发质效的显著提升,产生质的变化。测试实验室与事业部项目组共同成立研发测试融合小组,期望通过融合实现测试前移,降低测试缺陷率、缩短测试工期。

5 结论

近年来,敏捷开发流行,敏捷测试在国内也有了较大进步,加上DevOps 的兴起,进一步推动了测试前移和在线测试的发展。国家电网公司信息化建设经历了瀑布式研发测试模式,也积极探索敏捷开发、持续交付模式,对产品质量要求越来越高。测试作为产品全生命周期的一个环节,一方面要确保出厂产品质量安全,另一方面要与研发做好衔接,协同推进,节省项目成本。在数字化转型的大背景下,信息化企业需要不断探索研发测试质量提升举措,确保系统安全可靠。希望本文能为相关企业的研发测试工作提供可参考借鉴的经验和方法。

猜你喜欢
测试人员软件测试出厂
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
高校分析测试中心测试队伍建设方案初探
关于软件测试技术应用与发展趋势研究
浅析软件测试中的心理学应用
软件测试工程化模型及应用研究
2014年9月17日氯化铵出厂参考价格
2014年9月17日硫酸铵出厂参考价格
2014年9月17日钾肥出厂参考价格
2014年9月17日液氨出厂参考价格