分析当前国内银行IT系统已经从原有的“单一核心业务系统“发展成为”小核心,大应用“的多系统集群框架,银行IT系统的架构建设通过分步建设,逐步调整,趋向合理。在这种背景下,一方面在不断深入IT治理,调整优化IT系统架构;另一方面要同时保证金融业务的正常开展和不断推陈出新;这对银行科技部门的系统建设与交付的能力提出了更高的要求;国家金融监管部门也注意到国内信息科技发展的趋势,在针对国内银行业信息科技的组织管理、技术管理、安全管理、风险管理、外包管理等多个方面都提出了指导意见。
根据在金融行业IT建设、实施经验,设计开发神州信息自有知识产权的自动化测试系统,针对自动化测试从技术封装到调度执行,通过技术改造和方案优化,提供高效的自动化测试工具,提高测试工作效率。
神州信息自动化测试系统,能够对银行、电信的IT部门提供高效的自动化测试支持。极大提高测试工作效率与质量。
满足金融科技不断提高的交付能力要求:截止目前,神州信息的自动化测试系统,在金融行业客户中,自动化实施较早(浦发银行)、自动化案例规模较大(招商银行)、自动化执行机规模较大350台(江西省农信社)、自动化系统覆盖范围较广(中国银行),以及(宁波银行、浙商银行、光大银行、昆仑银行、广发银行、广州农商)等客户中成功实施落地,为其关键业务系统的安全投产运营提供保障。
自动化测试系统,包括系统分析、业务分析、案例设计、测试数据准备、执行管理等功能模块,覆盖自动化测试的全过程。底层基于神州信息的Sm@rt Ctrl技术对控件对象实现基于业务对象的识别通过,对测试环境、测试数据的自动适配,提高自动化测试案例的适用性,保护测试资产,降低测试案例维护的工作量。
在自动化测试调度中,采用基于云资源的自动化适配调度机制,做到无人值守的负载均衡自动化执行技术,使得大批量的自动化案例执行时长大为缩短。
国内自创的自动化案例无脚本设计
• 开发人员通过操作封装的方式,对系统的操作层面进行处理,提供给测试工程师操作、参数的选择、填写;
• 这样的处理,有效的将自动化测试中业务测试与技术处理分离,极大的提高了工作效率,且使得测试工程师摆脱了技术分析工作,专注于业务学习,提高了测试的质量;
• 自动化测试案例无脚本支持字符终端、Web系统、Desktop、移动、通讯接口类等系统多种类型。
• 今年神州信息自动化测试将引入AI引擎,基于AI技术对界面对象进行智能学习训练识别,将使自动化测试的技术运用更加容易。
智能化的自动化调度设计
• 自动化调度有Controller主要负责,先从测试管理平台接收自动化执行Schedule,根据现有的Agent状态选择分发,Agent执行完成之后结果保存至数据库,状态转为空闲,再接收Controller分发过来的自动化测试案例,再次执行自动化测试;
• Agent没有执行时,状态为空闲;接收执行案例时,状态为繁忙;如果无法连接到Controller,状态为不可用。
自动化测试数据管理设计
自动化的测试数据常见问题及解决方案列表:
常见问题 | 系统解决方案 |
---|---|
数据独占问题 | 通过业务流数据传递节省数据使用,同时结合案例数据视图配置,自动填充案例数据的方式,保证案例中数据唯一性。 |
消耗性数据问题 | 测试环境数据库回归前备份,回归后还原;使得同一批数据能循环使用,降低数据维护成本。 |
数据紧缺问题 | 通过为案例配置动态视图,在案例运行时自动读取满足条件的数据,临时加锁、执行,完成后解锁,保证了数据实用实销。 |
数据范围切换问题 | 案例数据视图中定义宏变量,可以通过宏变量的配置切换不同数据范围(如在多个机构中选择数据)。 |
测试环境切换问题 | 通过视图替换数据的方式完成,实现一套案例在多个测试环境上都能运行。 |
• 自动化测试数据管理由测试管理平台完成,用户在平台中配置视图,在编写自动化测试案例时,根据业务需求建立视图与案例参数映射关系;
• 在自动化执行之前,测试管理平台提供数据填充功能,根据映射关系,从数据视图中查询数据并填充至自动化测试案例参数中,完成测试案例数据替换。