金融软件功能自动化测试的分析及应用

2014-07-27 09:50:28孙萌婧
电子测试 2014年13期
关键词:测试数据脚本二次开发

孙萌婧

(陕西职业技术学院,710100)

0 引言

软件测试的地位随着软件开发规模的逐渐扩大、软件系统的逐渐复杂以及软件开发难度变大,加之开发和管理软件的投入成本的提升,导致软件测试变得极其重要。尤其是自动化测试的产生,使得其他非自动化测试方式逐渐淡出市场,而自动化测试慢慢变为普及的测试方式,有效的提高了软件检测的准确度与精准度。这与传统的检测相比具有极大的优势。由此可见,在金融软件测试领域中自动化测试不仅得到了广泛的应用,而且具有较为广阔的发展前景。

1 自动化测试定义

自动化测试是指由机器测试代替人为测试的一种过程,机器执行检测精准度远高于人工检测的准确率。自动化测试通常是通过应用相应的自动化测试试软件编写测试脚本,通过审查后,得出一系列的数据结果,再将实际结果和期望结果相比较,从而进一步实现软件测试的最终目。

2 自动化测试在金融系统中的应用

在目前的金融行业项目测试中,银行、保险以及相关的金融机构都是其包含的内容。其中,银行项目自动化检测的使用是最为广泛的。自动化检测一般在银行使用都是起到为测试中心、程序中心保证项目质量的作用,其能够进一步协调、开发测试工作。笔者会对银行项目中公信贷项目的生成,与测试系统的方案综合运用,综合的立体分析自动化检测需要的前期准备工作以及实施自动化检测的工作流程。自动化测试实施步骤一般分为下列10个步骤:首先,检测需要对测试的数据进行分析;再次,研究测试案例的规划与设计;然后对测试数据进检查;其次,QTP自动化框架的搭建、录制脚本、开发脚本、调试脚本。

2.1 前期对数据资料的测试分析

在对数据资料进行测试的过程中应该熟悉掌握银行公信贷项目测试的系统框架,并且获取相关的数据资料。在执行这个流程中需要银行技术人员在成立自动化测试项目组之初对相关工作人员进行一定的培训,让工作人员了解并掌握系统架构、获取资料的方式、制定测试范围等。分析公信贷系统与其他系统的关系图,如图1所示。其次,银行业务交易的分类。一般来说,业务系统包含了多种隶属模块,而每个模块中存在着多个交易项目。相关工作人员充分了解系统模式以及相关的资料后就可以开始进行交易的类别划分。之后的工作都由交易为单位进行。

最后,提取交易规则。提取交易规则主要是“手工额度占用”的规则,“手工额度占用”主要是手工调整有与系统处理错误导致没有正常占用或释放的额度数据信息。交易规则为:(1)保证、抵押、信用、保证金等为银行手工额度占用的担保方式;(2)客户的业务评级包含1至10级,客户在信贷系统的还款能力以及信誉取决与评级高低。

图1 对公信贷系统和其他系统之间的关系

2.2 测试案例

根据上文中提到的手工额定占用交易规则可以明确,使用正交分析法来进行测试案例。首先提取正交因素与因素水平。首先提取4个正交因素,可以得出表2的内容。表2中符号的含义分别为①表示占用起始日;②表示占用到期日;③表示授信额度起始日;④表示授信额度到期日;⑤表示占用金额;⑥表示当前系统日期;⑦表示授信可用额度。第二步,采用正交分析。将水平1对应的因素与其他水平的因素相替换并组合。第三步,根据正常条件与特殊条件的替代关系,便可产生一套新测试案例,如表3所示。

表2 水平采用等价类思想选取

表3 案例

2.3 测试数据检查和准备

测试数据的检测与准备首先要明确使用数据,并且将其整合。从表3中可以得出,其中的24个测试案例,每个数据的评价水平都不同,存在明显差异,在准备数据的过程总要选择案例与数据进行匹配。每个数据都不尽相同,所以应该准备24条以上的数据进行。使用的24条数据进行检查核对。数据准备的流程为:1)编写SQL语句查询数据库;2)若数据不足,则补充数据。因为必须要将数据库的安全性、可靠性考虑在内,因此交易界面做数据是最好的选择。交易界面具有即时性,最数据时可以保证精确度。最后,备份数据库。备份数据库的意义非常重要,因为部分数据具有消耗性,用过后就不能再使用,因此必须先将数据备份,等调试成功后,在还原数据库。

2.4 QTP自动化测试框架的构建

首先要使用关键字实施驱动自动化框架的准备。因为QTP使用的是关键驱动模式,能够完全简化测试的构建与维护工作,构建QTP自动化测试框架时,要将测试案例以及测试数据放置在Excel表格中,然后利用DataTable功能将表格中的测试案例、测试数据、用户资料直接导入,最后进行自动化生成,如图2所示。

图2 自动化框架详情

2.5 开发脚本

对脚本进行参数化转变是开发脚本的过程,而增加部分扩展函数是二次开发脚本的过程。该过程一般使用vbs、SQL语言,并结合QTP自带的方法和接口,对所录制的脚本进行二次开发。二次开发是指对脚本进行重组和调整的过程,录制后的二次开发脚本主要涉及增添logout和login函数、增加扩展函数、测试数据参数化、增加交易日志和截图输出功能等。

2.6 调试与运行脚本

调试脚本过程主要是修整和优化对库函数、测试数据参数化、增添logout和login函数、主脚本函数以及数据表等。调试完成后就可以正式进行运行工作。在运行二次开发脚本过程中首先要还原数据库,因为在调试运行过程中,有些数据具有单次使用性,由于二次使用而消耗了。当运行过程中出现异常,就必须有针对性地修改相应配置,直到正常运行。

3 总结

自动化测试在金融行业中普及开展不仅提高了金融行业系统的测试效率、工作效率、测试准确率,本文的银行公信贷测试案例具有重要的参考价值,为金融行业节省了大量人力、物力以及财力的开支。现阶段我国的金融行业发展迅速,金融软件的开发与完善将越来越重要,因此,在如此庞大的数据案例中急需更多、更科学、更精确化、更智能化的自动化测试技术给予技术支持。在未来几年,自动化测试的使用不仅仅是在金融领域,自动化测试技术在金融软件应用将会越来越成熟、先进,并且普及到各行各业中。

[1]朱菊,王志坚,杨雪.基于数据驱动的软件自动化测试框架[J].计算机技术与发展,2006,16(5):68-70.

[2]侯勇,张海林.自动化测试中的关键字驱动脚本技术[J]电子科技,2006,20(2):51-54.

[3]常征.功能测试中自动化测试框架的测试与应用[D].北京北京林业大学,2007:29-32.

猜你喜欢
测试数据脚本二次开发
酒驾
安奇奇与小cool 龙(第二回)
浅谈基于Revit平台的二次开发
甘肃科技(2020年20期)2020-04-13 00:30:02
浅谈Mastercam后处理器的二次开发
模具制造(2019年3期)2019-06-06 02:11:02
测试数据管理系统设计与实现
数据库系统shell脚本应用
电子测试(2018年14期)2018-09-26 06:04:24
西门子Easy Screen对倒棱机床界面二次开发
快乐假期
中学生(2017年19期)2017-09-03 10:39:07
基于自适应粒子群优化算法的测试数据扩增方法
计算机应用(2016年9期)2016-11-01 17:57:12
空间co-location挖掘模式在学生体能测试数据中的应用
体育科技(2016年2期)2016-02-28 17:06:21