文 | 《中国金融》记者张林
2019年12月5日,由中国金融出版社主办的第四届“中国银行业软件测试成果交流会”在北京召开。来自监管部门、金融机构以及IT企业的有关负责人和专家共同分享了银行测试工作的最新成果。会议由中国金融出版社总编郭建伟、副社长程建国主持,中国人民银行科技司副司长罗永忠、中国金融学会金融科技专业委员会秘书长杨竑出席会议并致辞。来自金融机构和软件测试行业的代表200多人参加会议。此次会议围绕建立中国银行业软件测试框架和标准、软件测试工作如何根据银行业新的组织架构变化实现快速交付、银行软件测试与金融数字化转型的关系等主题进行了深入讨论。
中国人民银行科技司副司长罗永忠表示,自2016年创办以来,“中国银行业软件测试成果交流会”迄今已成功举办了四届,已经成为业界重要的交流平台。在过去几年中,各家银行在软件测试领域也做了非常多的探索和尝试:一是引进了TMI测试程度模型,构建了度量平台;二是完善了测试组织架构,形成了测试管理的架构体系,推动整个测试工作有序发展;三是组建专业化的团队,开展自动化测试工具的研发,取得关键的技术突破,极大地提升了测试的效率;四是丰富了测试的组织形式,采用产学研深度融合,重塑了行业的生态圈。罗永忠指出,尽管国内银行软件测试的工作取得了非常不错的成绩。但我们也必须看到,软件测试作为保障信息系统质量的重要环节,在助力整个信息化建设健康发展、提升网络安全防范水平等方面还有发挥更多价值的空间。近几年来,银行软件测试交流会充分发挥了展示平台和交流平台的作用,行业软件测试跨机构跨行业协同与合作逐步加强。但同时我们也看到,各机构间的测试能力不平衡,部分中小的测试能力发展不平衡仍然存在,有些规模偏少,有不少的工作可能依赖外包。另外,在整个测试人才,特别是高级的测试人才上缺口仍然很大。这些都需要银行业内部和外部充分交流与高效与企业加强合作,以实现行业的整体进步和发展。面对未来挑战,银行软件测试工作有以下几点需要关注。一是软件测试的宽度在不断扩展。整个银行业的软件规模、复杂度都越来越高,对软件的可靠性要求与以前不可同日而语,给我们测试工作带来了新的挑战。二是软件测试的深度在不断加深。现在整个软件测试已经从纯业务应用发展到了基础平台软件,尤其在分布式架构上大量应用了开源软件的代码。三是软件测试的速度要求加快。随着金融科技的快速发展和广泛应用,银行业务运营模式对用户需求的响应速度越来越快,在软件测试在实现快速交付的同时如何做到快和稳兼顾,这是一个必须重视问题。四是软件测试的角度更加丰富。这些年银行信息化团队的组织架构开始进行重大的调整,不少银行成立了或者即将成立金融科技子公司。软件测试团队要以新兴的组织架构来适应整个信息行业的发展,从而发挥最大效益。
中国金融学会金融科技专业委员会秘书长杨竑首先回顾了以往三届软件测试交流会所取得的丰硕成果。2016年首届交流会正好赶上银行业软件测试逐步得到重视,开始进入发展快车道,会上各家银行分享了各自软件测试工作的发展路径和价值差异,从而引发了银行业软件测试该如何定位的讨论。第二届银行软件测试交流会就如何应对挑战、使软件测定能够适应银行转型发展新形势展开了讨论,与会专家提出要采用与国际对标的方式提升软件测试的基础性、框架性和质量控制水平。2018年召开的第三届的交流会围绕软件测试行业人才培养机制等问题进行深度交流,旨在为整个行业的发展夯实基础,重塑生态圈,逐步形成了交融互建、带着问题去串门的良好氛围,形成了诸多共识。大家通过中国银行业银行业软件测试交流会的公众号和交流群积极开展线上交流。为了探索更符合中国银行业自身特点和更具操作性的本土框架,由交通银行共同发起组成中国银行业软件测试框架小组,在2018年银行业软件测试成果交流会上成立,这个框架将帮助同业迅速缩短差距水平,从而整体提升银行业软件测试的交付价值。另外,由工商银行、中国银行和交通银行组成的联合课题组重新定义了银行测试人才的知识结构、级别划分、能力评价和培养路径。至此,银行业软件测试成果交流会已经成为业内重要的品牌盛会。杨竑指出,面对日新月异的各种数字化新技术挑战,银行软件测试不仅要依靠产业自身的努力,还要依靠良好的行业生态环境和资源有效聚集。一是重视测试前移,将测试融入信息技术建设,分析需求的可行性,确保产品的可测试性,使测试不仅是出口,更能成为入口。二是拉近个体差异,进一步对标国际标准,持续丰富自身最佳实践经验,站在行业的高度构建符合行业需要的企业测试框架。特别是要鼓励发展比较晚、规模比较小的机构积极参与已经建成的行业共享体系,积累数据,检验成效,充分利用行业资源缩小与同业的差距。
中国工商银行业务研发中心总经理毛卫东表示,为积极应对快速响应市场变化,满足客户个性化产品研发需求,工商银行积极探索、稳中求变,于2017年底正式启动智慧银行信息系统ECOS工程建设,重塑了产品端到端的全生产链条,并于2018年底整合产品中心和数据中心(北京)两个机构组建业务研发中心,致力于优化和完善工行业务研发模式,构建从需求创意开端、验收投产中端,再到推广支持与运营分析末端的产品和业务全流程管理与服务,在业界率先开启了业务创新与技术变革深度融合转型发展之路。近一年时间里,工商银行在确保质量的前提下,瀑布模式需求编写效率较2018年提升18%,需求审批用时缩短22%;新研发模式推进1000余个需求项的实施,需求项平均研发效率比2018年提升明显。这是工商银行审时度势、面向未来、拥抱新时代的又一次有益探索。
中国农业银行研发中心副总工程师蔡仕志做了题为“农业银行自动化测试技术的实践和思考”的主题演讲。他介绍了农业银行八年来的自动化测试发展历程和各阶段的主要收获,总结了农业银行在自动化测试实施过程中遇到的困难和突出问题,以及针对这些问题所构建的自动化测试核心技术栈,重点分享了其中“手自一体”的案例标准化整体方案、“商”语言技术体系、数据标准化、业务规则标准化等关键技术点,以及“无脚本化”“无案例化”、平台化建设等具备一定独创性和前瞻性的自动化测试发展理念。
中国银行软件中心副总经理李兆云指出,数字化转型已经成为国内银行业发展战略的重中之重,开放、互联、竞争、合规、风控以及新兴技术的应用给银行业软件测试带来很大的挑战,但同时也面临着机遇。如何构建数字化的质量管理体系,实现全流程测试的自动化和智能化,让测试更敏捷,并成为创新、质量和效率的催化剂,是要重点思考和解决的问题。中国银行通过质量管理数字化转型探索和实践,建立了“112N-4”的质量管理数字化框架(即1个体系、1个平台、2个目标、N个场景、4个成效),以支持瀑布和敏捷双模的质量管理体系为支撑,引入AI、大数据和监测技术,建立质量智能管理平台,实现质量数据标准化、质量分析数字化、质量管理智能化,达到沉淀质量数据、构建质量画像、赋能管理决策、提高质量效率的目标。实现质量管理的数字化,做到软件质量的“可预测、可监控、可审计”,赋能银行业务价值的快速发展。
建信金融科技公司测试与质量控制中心主任涂耀旭介绍了建设银行在测试与质量控制工作的探索,围绕金融科技公司面临的体制转型,业务左右岸双线布局以及ABCDMIX等新技术带来的挑战,测试与质控中心着力从以下四个方面开展探索和创新工作:一是建设全面质量管理体系,以可信的视角,针对稳态、敏态、同业输出等多维度构建灵活差异化的测试与质量管控体系;二是履行全面质量管理,实现研发过程的在线化、透明化、数字化、精益化的质量控制,构建驾驶舱式的能力成熟度和质量画像,以及“看得见的质量”;三是打造端到端的全流程的智能协同研发平台,以资产为基石构建高效的研发、质控和管理的融合平台,在研发流程内嵌质控实现质量内建。四是深耕专业化测试与质控能力,以智能化的代码透视、鹰眼探测等精准测控技术,从传统的“收费站”模式转型为“加油站”模式,赋能研发质量和效率。
交通银行测试中心叶旻处长结合当前银行业软件测试发展的挑战和机遇,分享了交通银行测试中心在转型实践探索中积累的经验,并提出了转型发展、合作共赢的相关思考和倡议。他认为在金融科技迅速发展的新形势下,银行业软件测试面临着来自业务发展、技术更新和组织变革等方面的挑战,同时也蕴含着巨大的发展机遇:银行对软件测试工作的重视程度进一步提升;银行软件测试的组织成熟度和团队能力显著提高;银行软件测试不断调整自身定位。他从丰富测试策略、升级基础设施、优化组织体系等方面分享了交通银行测试中心前期开展的探索和实践,并提出了三点思考和倡议:一是借助行业标准,促进能力提升;二是深化同业交流,促进自身转型;三是加强生态建设,促进共同发展。
中国民生银行质量与测试管理中心主任刘晨东认为,传统的商业银行目前正面临着来自互联网的强力挑战,银行的很多开发团队积极向敏捷开发转型,测试团队如何适应这种转型并快速改变,成为摆在各家银行测试团队面前的首要和迫切任务。结合商业银行软件测试未来发展趋势,中国民生银行从2018年开始实施质量与测试一体化平台建设项目。旨在打造一个测试、开发、运维、业务等相关人员协同工作的云测试平台,从而更有效提升银行IT系统的投产效率与质量,加快适应互联网+金融时代的快速反应模式。民生银行云测试平台通过全新的系统架构设计、引入分布式技术、整合开发运维管理工具和流程,实现了银行业IT系统在质量与测试管理方面的创新性突破。借助这一全新的平台,民生银行实现了质量与测试管理水平、测试工作交付效率的大幅度提升,从而不断降低测试成本与生产运营风险。
中国软件测试认证委员会大中华地区首席代表、TMMi基金会中国分会理事长刘琴表示,当今金融测试行业的发展以及全球软件测试界的技术演化十分迅捷,呈现出与各行业紧密交叉结合的趋势,软件测试关注的热点包含大数据AI系统测试、开源群智测试和区块链加密体系的测试等。作为ISTQB(国际软件测试认证委员会)授权的大中华地区唯一协会和TMMi(测试成熟度模型集成基金会)授权的大中华地区唯一中国分会,中国软件测试认证委员会作为立足本土、架接世界的桥梁,一直秉承“吸纳先进理念和技术,服务国家建设与人才培育”之目标,国内已有2万余名专业技术人员获得各等级认证证书。在前期和银行业软件测试领域合作的基础上,两个协会将继续为国内金融行业提供合作科研攻关、国家标准联合编制、专业人才培养等领域的优质服务,共建产学研用平台,助力中国金融业自主创新,更好地服务于人民。
中国工商银行业务研发中心资深经理张桂伟介绍说,工商银行业务研发中心于2018年11月通过了TMMi5级认证,成为国内银行业首家通过5级认证的组织。经过两年的改进并通过认证,构建了基于风险的全生命周期的测试管理体系。该体系以测试基础流程为主线,全面引入风险管理和风险防控的理念,在立项可行性评估、需求分析、测试设计、测试执行、投产准备等各阶段,将风险分析的结果做到可继承、可跟踪、可追溯。同时,在测试全生命周期中强化测试评审,加强过程监督,使得测试过程透明、测试风险可控。构建该体系的主要目的有四方面:一是重塑测试风险;二是重构测试流程;三是强化测试评审;四是建立质控模型。认证通过后的主要变化,一是从原来的以发现缺陷为目的的测试,转向以风险防控为目的的测试;二是从以基于人员经验开展的测试,转向以基于资产复用开展的测试。
中国光大银行信息科技部副总经理邵理煜介绍说,为响应集团提出的“科技、敏捷、生态”的发展战略,应对金融科技快速响应市场的挑战,配合DevOps转型,光大银行聚焦质量保障的关键点,建立了跨部门协同交付的流程和标准,构建了适应于双模生态的基础平台和工具链,在全行范围内规模化的推广了分层级多项实践,并通过信息化系统落地,做到流程可以追踪、标准可落地、结果可反馈、度量可精准。主要开展的实践包括:代码级的“静态代码扫描”和“单元测试”,功能级的“测试覆盖度分析”和“测试自动化”,安全级的“代码安全扫描”和“产品安全扫描”,交付级的“预投产制版打包”和“自动化回归”。一年来,光大银行超过15%的系统投产频次由“月月投”提升为“周周投”,整体业务需求响应提速30%;生产事件密度持续下降, 应用系统可用率连续三年保持在99.999%以上,科技服务业务既快又好的效果逐步显现。
中信银行软件开发中心副总经理冷炜表示,为应对IT双模时代对测试的挑战,适应敏捷开发模式,2019年中信银行测试部门通过建设具备“专业化团队打造、集约化测试管理、线上化作业实施、高复用资产共享、跨地域测试协作”能力的测试中台,实现了组织结构调整、工作模式变革、测试工具服务化能力改造以及高可用资产库建设,初步完成了能同时适应“稳态”及“敏态”模式的测试体系转型。今后,中信银行测试部门将继续在人员培养、能力建设、工具研发、服务开放四个方向推动软件测试从e测、享测到慧测的转型进阶之路。
杭州笨马网络技术有限公司(PerfMa)首席技术官童庭坚表示,如何在快速迭代下保障系统稳定性是性能测试团队的核心任务。只有让全链路性能评测与调优手段敏捷化和智能化,并将性能视为质量红线,才能更好的保障持续迭代后系统的性能和容量。PerfMa的一站式性能解决方案从压测数据准备、环境健康检查、分布式压测调度,到性能数据的采集与分析,全流程做到一次编排多次回放的高自动化能力。同时在压测过程中可以实时的透视每一个业务场景背后的全链路性能损耗。当出现性能瓶颈时,会诊断到函数、代码行、配置级别,甚至能给出部分优化方案。目前,PerfMa已经帮助多家企业实现了在团队规模没有扩张的前提下,性能回归测试覆盖率提升3-5倍、压力机资源投入减少至最低十分之一,全年发现近千个有效性能问题。同时也将持续性能评测敏捷化,帮助企业实现了近百个关键系统每周发布前的全量自动化回归与潜在性能风险识别能力。PerfMa的客户覆盖多个行业,包括证券、银行、保险、互联网等,各行业客户都在POC阶段即获得显著性能提升收益。未来, PerfMa将继续专注探索解决测试“快”和“准”的问题,并将落地方法抽象形成测试技术中台为质量赋能。
软通动力信息技术(集团)有限公司银行业务事业群副总裁陈晟以“测试 AI 与 AI测试”为主题分享了软通动力信息技术(集团)有限公司在AI和软件测试领域的思考与实践。AI是当前IT领域热点,AI系统内生的成长性、数据密度高、结果不确定等特点,决定了AI系统测试与传统应用系统测试有着显著差异。软通动力认为算法是AI系统测试中的主要测试对象,数据实验是AI系统主要测试方法,测试数据的自动化构建是重要有效途径,并通过实例进行了说明。同时,AI如何应用于软件测试,也是业界关注的重要论题。软通动力通过实例介绍了AI应用于测试的三个层面:一是将是机器学习用于对象与系统状态识别,支持现有自动化测试工具更高效地执行测试;二是AI用于学习手工测试资产,并自动生成新的测试案例,突破原有自动化测试主要用于执行阶段的局限;更进一步是综合利用机器学习与知识图谱技术, 对业务设计及业务数据选择进行有效性验证,特别适用于银行业当前业务快速创新的场景。基于对AI的深刻理解并以解决当前测试领域挑战为目标,软通动力将与业界持续加强沟通与合作,致力为客户提供包括Al技术在内的高水平、专业化服务。
平安银行科技开发中心测试管理团队负责人许鹏森表示,项目很容易因为前半段的“快”而将压力和风险堆积在后半段的测试,因此测试团队需要发出呼声,在组织级治理好所依赖的基础前提,做好测试准入。测试团队要建设好各类测试工具与能力,如过程管理、精准测试、数据准备、环境维护、自动化、性能、安全等,让强大的“中台”赋能测试,让测试人员轻装上阵,快速交付。比“快速”更重要的是“质量”,有立体化的质量保证体系,测试部门才有底气小步快跑、快速交付。测试部门需要建设一支业务精湛、技术扎实的测试队伍,才能够快速理解、分析、设计、测试交付业务需求。
中国软件测试认证委员会(CSTQB)资深专家市场组组长高级讲师熊晓虹表示,要应对快速交付持续集成新形势的挑战,首先可以从过程上引入大型敏捷开发框架,针对产品规模的大小和银行的产品战略采用不同的适当的敏捷开发过程,有选择地做每日交付时时交付。组织上则要适应开发过程的变化,争取管理层的支持和承诺。要做验收测试驱动开发,把验收测试准则,测试的可测性,测试的自动化作为需求的一部分。测试人员要去掌握需求工程的知识和能力。在需求阶段就把需求变成人和机器都易懂的形式语言,一为建立模型和智能生成自动化测试集打好基础,二可实现在需求阶段就把控需求质量,精准描述需求,避免错误的需求导致错误的开发和测试。要引入数学专家,未来基于AI和模型的自动化测试都离不开算法和统计,自动化测试的快速精准的创建和执行是快速交付的必要条件之一。
星云测试CEO 赵明表示,星云测试在行业上发起的精准测试技术体系是一种计算机辅助分析系统,在关注普通黑盒测试过程中的输入输出同时,通过无感技术,可以采集和分离每个用例在运行过程中的海量代码执行逻辑并关联起来,实现对用例的深度分析和应用计算机智能算法。用例和代码的关系就像量子纠缠,它们互相作用并保持一个整体,精准测试可以再测试执行期瞬间重建这种量子纠缠的场景和数据。在敏捷迭代环境下,因为测试用例运行分散在很多程序版本上,因此覆盖率的统计也失去了原有的数据意义。星云精准测试创新的提出了累积覆盖率和相关覆盖率等多种创新的计算法方法,使得覆盖率技术继续应用于敏捷环境下。星云精准测试对应的产品名字是ThreadingTest(穿线测试),它的一层含义就是能将开发、测试都非常紧密的联系起来。例如,它可以让普通测试产生的数据结果直接执行智能缺陷定位算法,大大增强测试本身的深度和在开发全流程中的价值。星云测试的Wings产品可以在对被测程序深度语法和类型解析的基础上,全自动完成单元测试用例编码,解决测试驱动开发的最大难题,并实现一种不需要人工编码的超自动化系统。
中国银行软件中心战玲玲表示,金融软件的质量关系到人民群众的财产安全,投产上线前代表用户的验收测试重要性凸显。为了满足新的业态和形势的要求,应及时调整验收测试的策略和改进工艺。首先要调整测试的侧重点和角度,真正站在用户的角度,注重客户体验,并辅以基于风险的策略开展测试,从而提升用户的满意度,同时也赋能业务需求的质量;其次要逐渐建立全生命周期验证标准,打造检验软件质量的“尺子”,并通过建立智能化的分析平台,实现标准的硬约束,自动监测和分析测试情况、测试的覆盖情况,赋能软件开发过程的标准化和代码编写质量。
浦发银行信息科技部测试服务中心副处长陈俊表示,在保证测试质量的同时提升测试效率,是当前银行业软件测试工作面临的共性问题。为此,浦发银行开展了相关探索和实践。一是研发测试案例自动生成技术,在保证测试案例质量的同时,有效提升测试案例编写效率,建立业务模型资产而非测试案例资产,大幅降低编写和维护测试案例工作量;同时推动ATDD(验收测试驱动开发)在软件研发过程的试点落地。二是推动精准测试工作,建立软件代码与业务交易之间的映射关系,精确划定变更影响范围及应测内容,减少不必要的测试投入,将有限的测试资源和时间聚焦于高风险测试内容。
此次交流大会得到了杭州笨马网络技术有限公司PerfMa、软通动力信息技术(集团)有限公司、北京文思海辉金信软件有限公司、上海爱元通科技有限公司、星云测试的协助与支持。