■中国农业银行研发中心 刘跃光 冯 瑶
随着金融系统软件复杂度的持续提升,传统的基于人对业务理解的经验型测试方法面临着巨大的挑战。由于敏捷迭代引起的回归测试工作量远超瀑布模式,开发与测试岗位技能不同,以及测试过度依赖人的经验等原因,功能测试的充分度越来越难以保证。在此背景下,金融系统软件测试及开发过程中存在如下问题。
一是开发人员与测试人员之间的交互和沟通存在壁垒。在功能测试阶段,测试人员通过黑盒测试方法对待测系统进行测试,由于无法知晓程序内部逻辑,通常发现缺陷的处理流程是:测试人员发现缺陷后向开发人员反馈,由开发人员进行问题复现,通过debug等方式找到故障代码段。在这个过程中,由于开发和测试人员的岗位技能和知识储备不同,双方通常需要反复沟通才能定位缺陷,查找和修复缺陷的成本高。
二是回归测试的精准性难以保证。在项目测试中,修改项目代码后,往往需要对关联的测试案例进行回归测试。然而,如何找到关联度最高的测试案例,往往需要通过人工筛选来判断,回归测试的准确度高度依赖于测试人员的经验。
三是黑盒测试的充分性难以衡量。功能测试往往采用黑盒的方式实施,在测试过程中,测试人员无法直观地看到测试用例与代码的关联,以及用例对源代码的覆盖程度,测试充分性缺乏明确的度量指标作为依据。……