用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业设计下载计算机毕业设计网络工程

金融行业大型机应用系统性能数据自动分析的研究与实现

联系方式:点击这里给我发消息QQ212181988
官方主页:www.biye114.com
图片预览: ;论坛转帖
插件情况:
售后服务:请联系客服QQ:212181988
一键分享拿折扣:
  • 好的评价 如果您觉得此软件好,就请您
      0%(0)
  • 差的评价 如果您觉得此软件差,就请您
      0%(0)

软件简介

 银行等金融机构的核心应用软件系统通常都采用主机架构,在针对金融行业主机应用软件系统的非功能测试中,性能数据分析工作一直是重中之重,现有的主机性能数据分析,主要采用人工对全量打印的主机报表进行统计、分析的方式,这种方式难以避免地会产生很多弊端:
1.主机资源数据过于庞杂,而实际上在大多数情况下全量的资源数据并不是必须的,并且没有对应金融行业主机应用软件系统的性能分析所需的关键指标,如TPS、响应时间、单交易消耗MIPS等。
2.人工对资源报表进行统计、分析是一项十分耗时、繁冗的工作,对测试人员的技术要求相对较高。
3.对大量报表的人工统计难免会引入人为误差,导致基于此的性能数据分析出现严重偏差。
针对以上这些弊端,本发明研发了一种基于金融行业大型机应用软件系统的性能数据自动分析装置,实现了主机资源数据抽取打印定制化、数据统计自动化、数据分析精确化,在极大程度上减少金融行业主机应用软件系统性能分析的人力、时间成本,降低误差,精确客观地展示应用软件系统的性能情况。


关键词:主机、报表、非功能测试

目 录
1 绪论 3
1.1 研究背景 3
1.2 研究意义 4
1.3 研究内容 5
1.4 论文结构 6
2 导师制学习与总结 7
2.1 非功能测试基本技能学习 7
2.1.1 LoadRunner学习 7
2.1.2 资源监控方法的学习 8
2.1.3 中间件学习 8
2.2 非功能测试方法学习 9
2.3 主机知识学习 10
2.4 架构知识学习 12
3 金融行业大型机应用系统性能数据自动分析的理论基础
3.1 事件驱动架构的定义和特点 14
3.2 事件处理架构的组成 15
3.3 典型的事件驱动架构处理模式 16
3.4 EDA与SOA的对比分析 17
4 金融行业大型机应用系统性能数据自动分析的实现
4.1 性能自动分析模块的整体介绍
4.2 性能自动分析模块的展示
4.3 性能自动分析模块
5 总结与展望 35
5.1 总结 35
5.2 展望 36
致谢 38

1绪论
1.1研究背景
一直以来,主机在建行银行的IT系统中占据核心地位,在针对金融行业主机应用软件系统的非功能测试过程中,我们常常需要对应用软件系统进行性能分析,以确保该应用满足或超过设计的期望值或者分析应用中潜在的问题。
通常的做法是对全部主机系统资源进行打印,人工选取特定金融系统关注的关键资源指标进行分析统计,并形成相关报表。测试人员再根据报表判定软件是否符合设计要求或是否存在性能缺陷。所有这些操作都需要极大的人力和时间消耗,并且对测试人员的技能需求也较高。而最大的问题是大量的报表统计和繁杂的数据分析难免会引入人为误差甚至导致严重的错误。
因此我们亟需一种自动化的金融行业主机应用软件系统性能数据分析工具,可以对金融行业主机应用软件系统进行定制化的性能数据分析,在极大程度上降低人力成本、减少误差的同时,确保性能分析的灵活性、有效性以及精确性。
1.2研究意义
银行等金融机构的核心应用软件系统通常都采用主机架构,在针对金融行业主机应用软件系统的非功能测试中,性能数据分析工作一直是重中之重,现有的主机性能数据分析,主要采用人工对全量打印的主机报表进行统计、分析的方式,这种方式难以避免地会产生很多弊端:
4.主机资源数据过于庞杂,而实际上在大多数情况下全量的资源数据并不是必须的,并且没有对应金融行业主机应用软件系统的性能分析所需的关键指标,如TPS、响应时间、单交易消耗MIPS等。
5.人工对资源报表进行统计、分析是一项十分耗时、繁冗的工作,对测试人员的技术要求相对较高。
6.对大量报表的人工统计难免会引入人为误差,导致基于此的性能数据分析出现严重偏差。
针对以上这些弊端,本发明研发了一种基于金融行业大型机应用软件系统的性能数据自动分析装置,实现了主机资源数据抽取打印定制化、数据统计自动化、数据分析精确化,在极大程度上减少金融行业主机应用软件系统性能分析的人力、时间成本,降低误差,精确客观地展示应用软件系统的性能情况。
1.3研究内容
本文首先回顾在导师制培养计划下,一年以来在导师蔡宝列的耐心指导中所学习的基本知识、专业技能。通过回顾在导师制培养计划下具体知识的学习和能力的培养,总结入职以来在非功能测试、主机和架构方面的收获与感想。
本文主要的研究内容包括三个模块:
1.报表自动打印模块
报表自动打印模块读入报表参数配置文件,参数化需要打印的作业模板,提交作业打印生成相关的报表及报表列表。报表列表用于自动统计中确定当前可用的报表
2.指标自动统计模块
指标自动统计模块读入统计参数配置文件,从报表列表中扫描当前统计需要的报表数据集名,读入相关的报表,统计生成指定的统计指标数据
3.性能自动分析模块
性能自动分析模块读取指标统计结果,并结合自动分析配置文件,给出性能分析相关提示,以辅助测试与开发人员快速定位性能相关问题。

最后,针对非功能测试团队的工作需求,展望下一步工作的方向。
1.4论文结构
本论文共分为六章。
第一章,绪论(即本章)。介绍论文的研究背景、研究意义、研究内容以及论文的组织结构。
第二章,总结了导师制实施一年来在非功能测试基本知识、基础技能上的学习和积累的情况,还介绍了主机方面的基础知识和基本操作技能,以及在轮岗所学习的架构知识,总结一年来的收获和成长。
第三章,介绍金融行业大型机应用系统性能数据自动分析的相关研究,以及主机组对该课题的研究。主要包括三个模块:报表自动打印模块、指标自动统计模块、性能自动分析模块。
第四章,介绍金融行业大型机应用系统性能数据自动分析装置的实现,重点是性能自动分析模块。
第五章,总结与展望。本章在对非功能测试测试方法等方面的学习总结基础上,对导师制一年来的学习工作进行总结和提出展望。

2导师制学习与总结
导师制实施一年以来,在导师蔡宝列的指导与各位同事的帮助下,从最基本的对建行规章制度和办公软件学习开始学习,了解各部门的职能与分工。同时也抓紧学习掌握非功能测试的各种技能,了解测试规范并体会测试方法。作为主机小组成员,从零开始接触主机,逐步了解主机系统、主机非功能测试相关知识。借调到应用架构的时间里,认真学习了架构理论知识,熟悉新一代系统。
2.1非功能测试基本技能学习
测试基础概念学习
软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,鉴定软件的正确性、完整性、安全性和可靠性,所以说软件测试工作的质量直接影响软件产品的质量。通过相关培训和导师详细讲解,我基本掌握了测试相关的基础概念。
其中V模型是软件开发过程中的一个重要模型,V模型大体可以划分为下面几个不同的阶段步骤,既需求分析、概要设计、详细设计、编码、单元测试、集成测试、系统测试、回归测试。其中软件测试阶段包括单元测试、集成测试、系统测试、回归测试四个阶段。另外在V模型基础上提出了W模型,W模型强调的是测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。他通过开发和测试同时进行的方式来缩短开发周期,提高开发效率。
单元测试是对软件组成单元进行测试,其目的以模块为测试单位检验软件基本组成单位的正确性;集成测试将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作,其主要目的是检查软件单位之间的接口是否正确。系统测试主要包括功能测试、界面测试、可靠性测试、易用性测试、性能测试。 功能测试主要针对包括功能可用性、功能实现程度方面测试。回归测试指在软件维护阶段,为了检测代码修改而引入的错误所进行的测试活动。
性能测试概念学习
性能是指计算机系统实现其功能的能力,系统性能的度量一般有如下指标,例如,响应时间、吞吐能力、事务处理数等。性能测试就是是通过自动化的测试工具模拟生产运行的业务压力量和使用场景组合,如正常、峰值以及异常负载条件下,来对系统的各项性能指标进行测试,看是否满足生产性能要求。性能测试在软件的质量保证中起着重要的作用,它可以验证被测系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,提出系统优化需求明确。
性能测试类型包括负载测试、容量测试、稳定性测试,可靠性测试等。负载测试考虑被测试系统的业务压力量和典型场景在生产中的实际意义,通过在被测系统上不断加压,直到性能指标达到极限,如某种资源已经达到饱和状态。这种性能测试方法的主要目的是找到系统处理能力的极限。容量测试是在一定饱和状态下,例如CPU、内存在饱和使用情况下,系统能够处理的会话能力,以及系统是否会出现错误。来获得系统能提供的最大服务级别的测试,确定系统最大承受量,譬如系统最大用户数,最大存储量,最多处理的数据流量等。稳定性测试是指在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定,这种性能测试方法的主要目的是验证是否支持长期稳定的运行,测试过程中需要关注系统的运行状况。
非功能测试规程学习
我行非功能测试工作主要是指系统性能测试、可用性测试及其它与系统非功能性特征相关的专项测试工作。为规范非功能测试工作,加强测试工作流程规范的控制,明确非功能测试各阶段应完成的工作,指导测试人员正确、有序的开展非功能测试工作,提高各角色在非功能测试中的工作效率,保障非功能测试工作的正常开展特编制《非功能测试工作规程》进行指导。
如图1所示,非功能测试流程分可具体分为测试准备阶段,测试实施阶段及测试收尾阶段。

1)测试准备阶
测试准备阶段具体分为调研子阶段和准备子阶段。调研子阶段的主要工作为:确定参与测试人员、QC项目创建、需求管理、模型构建、定制非功能测试详细实施计划以及编制非功能测试任务书;准备子阶段需要完成非功能测试的实施方案、测试环境的准备、非功能测试案例设计、非功能测试监控方案设计、非功能测试脚本,及相关测试数据的准备,并在上述相关准备活动结束后按照测试计划进行准入检查。
2)测试实施阶段
测试实施阶段分为测试执行子阶段和报告子阶段。此阶段是执行测试案例,获得系统处理能力指标数据,发现非功能测试缺陷的阶段。测试执行期间,借助测试工具执行测试场景或测试脚本,同时配合各类监控工具。执行结束后统一收集各种结果数据进行分析。根据需要,执行子阶段可进行系统的调优和回归测试,并完成测试报告的撰写。
3)测试收尾阶段
非功能测试的收尾工作,主要是对该任务的测试过程和测试技术进行总结,撰写和更新系统性能档案,归档保存相关非功能测试资产、同时进行集成测试计划的更新、测试设备、测试工具软件归还,申请关闭QC项目。
测试收尾阶段的工作难点主要存在于对测试结果的分析,尤其在出现了不符合预期的测试结果后,需要定位造成该结果的原因并寻求解决方法,还需排除测试环境等外在因素对测试结果的影响。在撰写报告时,一定要紧扣测试目的,明确描述测试内容,并且用清晰的描述语言对测试结果进行分析。通过这一阶段的工作,我大幅度提高了自己测试分析能力。另外,通过此次测试任务我体会到做好测试的工作总结非常重要,工作总结不仅可以为其他人员提供更多可参考资料,同时也是对自己所做的工作所获得的经验进行记录。

2.1.1LoadRunner学习
LoadRunner软件是性能测试工作中最常使用的工具。LoadRunner主要包括三个组件:Virtual User Generator(简称VUGen)、Controller和Analysis。这几个组件简要介绍如下:
VUGen:用户使用VUGen录制最终用户业务流程并创建自动化性能测试脚本,VUGen支持多种协议,建行主要使用的协议有:http/html, socket, tuxedo, web service等协议。其中http/html,webservice协议通常采用录制实现脚本,socket和tuxedo通常采用手动编写方式实现脚本。
Controller:组织、驱动、管理并监控负载测试。Controller包括了Design和Run界面。Design界面主要用来设置运行场景,场景设置包括了交易并发用户数,交易脚本占比。Run界面可以实时查看到场景运行过程中每个交易的响应时间等指标,如果被测系统产生异常,Run界面将捕捉并反馈这些异常。
Analysis:Analysis和Controller 都可以看到TPS,响应时间等指标,不同点在于Controller Run界面可以实时查看到指标的瞬时值。但是Analysis组件也提供了分析报表的功能,例如用户可以查看某段区间中的数据,以及将不同指标合并到同一个界面的功能。
我行之所以采用LoadRunner作为非功能测试工具,主要是因为它可以通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。通过使用 LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。 LoadRunner是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并评估系统性能。
2.1.2资源监控方法的学习
在性能测试过程中,对主机资源监控有着重要意义。一方面,在测试过程中可以判断加压是否成功、系统是否能承受当前压力,确保系统安全;另一方面,测试结束后,通过对监控数据的整理,可以为性能分析、发现问题、寻找瓶颈提供数据支持。对于不同的被测系统,我们选用不同的监控软件,获取不同的资源数据。常用的监控工具包括nmon和glance等。一般的, CPU、MEM、I/O等为最常用的资源监控项,有时也需要关注网络等相关数据。资源监控主要分为两种,一种是监控工具,它们可以将每一时刻的资源利用情况记录下来用于测试后的分析;一种是系统自带的命令,可以实时观察系统的资源利用情况,例如top、topas、vmstat和iostat等。
nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具, nmon所记录的信息是比较全面的,它能在系统运行过程中实时地捕捉系统资源的使用情况,并且能输出结果到文件中。nmon工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。并且nmon运行不会占用过多的系统资源,通常情况下CPU利用率不会超过2%。针对不同的操作系统版本,nmon有相应版本的程序。
2.1.3中间件学习
中间件是一种应用于分布式系统的基础软件,位于应用与操作系统、数据库之间,主要用于解决分布式环境下数据传输、数据访问、应用调度、系统构建和系统集成、流程管理等问题,是分布式环境下支撑应用开发、运行和集成的平台。中间件的核心思想是抽取分布式系统对于数据传输、信息系统构建与集成等问题的共性要求,封装共性问题的解决方法,对外提供简单统一的接口,从而减少开发人员面对上述共性问题时的难度和重复性工作量,提高系统的开发效率。中间件介于客户机和服务器之间的夹层,突破了传统的C/S架构,为构建大规模,高性能,分布式C/S应用程序提供了通信,事物,安全,容错等基础服务,屏蔽了底层应用细节,应用程序不必从底层开发,以自身的复杂性换取应用程序开发的简单。
我行常用的中间件产品是Weblogic、Tuxedo等,作为非功能测试人员,需要理解它们的基本理论知识以及一些基本的操作方法,便于在测试过程中快速查找问题并解决问题。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。入职以来参加了相关的中间件培训,对于Weblogic主要学习了如何部署Weblogic Server,了解了简单的Weblogic优化配置。NodeManager是Weblogic提供的一个节点管理程序,当Server故障出现进程丢失等情况时,其会自动检测,并尝试重新启动Server。测试时需关注Domain和Server以及应用的日志,在测试调试和执行过程中根据日志信息推测问题原因,并给出可能的解决方案。Tuxedo是一种多语言、可任意伸缩的事务处理平台,是使用非常流行的交易中间件,特别是在银行交易系统中使用很广泛。Tuxedo 系统的核心是能够保证“一次性”交付的高性能、高可靠性的消息引擎。Tuxedo分为客户端和服务端,学习了环境变量设置,Tuxedo配置文件的编辑,客户端和服务端的简单开发,启停服务,查看状态等一些基本操作。
2.2非功能测试方法学习
一次非功能测试完整阶段包括准备、实施和收尾几个阶段。准备阶段包括项目调研,测试目的、测试范围和测试环境分析,测试方案、案例的编写,脚本的开发,交易配比等过程。实施阶段主要是测试执行,监控系统和结果分析,编写测试报告。收尾阶段对测试进行总结,回收测试环境等。下面介绍这些过程中需要学习和掌握的一些方法。
测试范围、环境与发起策略的方法学习。通过项目调研,需分析被测系统的测试范围,分析各交易的交易路径,最终确定测试策略。压力发起端所模拟的系统以及特点,测试使用的协议类型,是否需要加解密操作等具体细节。测试如若需要挡板,挡板采用的协议类型需要明确,是否加密,是否脱敏也需要明确。根据测试中测试环境与生产环境对比分析给出差异情况以及测试指标值,推断挡板需要支持的性能指标,避免挡板成为测试过程中的瓶颈。
通过学习以往的测试方案、案例和报告,以及参与实际的测试实施任务,分别了解各测试案例执行时,常用的测试场景设置方法以及具体要求。注意测试执行和测试调试的区别,避免引入影响被测系统性能的因素,造成测试结果的不准确。
非功能测试过程中脚本准备方式有两种,第一种是新开发的脚本;第二种是复用项目使用过的脚本。脚本的复用提高了脚本开发的效率,可以加快非功能测试实施的进度。在新开发的脚本及可复用的脚本过程中:1)对复用脚本连通性、正确性进行验证;2)提炼脚本可复用的模块,形成标准函数库,方便后续新脚本;3)严格执行脚本中注释的添加要求。
学习Loadrunner Controller场景设置,例如pacing调节、梯度压力发起策略等;学习如何根据业务模型推导出测试模型,如何根据交易TPS指标转换为对应的各脚本的用户数配比。测试时,若一台压力机压力不足,可以设置Controller使用多台压力机配置场景。根据被测交易的协议类型,来选择Windows或者Linux系统的Generator。测试时也应注意压力机上的一些设置,例如设置hosts文件、环境变量等。
在熟悉Loadrunner Controller的使用的同时,结合测试案例,完成测试场景的设置和执行,填写好测试执行日志并统计执行时各被测机器资源使用情况,测试执行过程就基本完成了。
高可用性案例的执行,与性能容量案例有很多相似的情形,其更注重检验被测系统或应用在特定条件下的可用性特征。高可用性案例执行前,需熟悉各案例所涉及的被测系统特性,了解其实现该功能的基本原理,为测试执行、问题排查等打好基础。

下载地址

点击此处→注册会员上传设计赚钱
以上是大纲和介绍,如需要完整的资料请在线购买.

软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 本站所有资料均已审核通过,内容原创保密,标准格式,质量保证
* 无需注册,点击在线购买后即可获取该套毕业设计(论文)完整
* 支付后请联系在线客服QQ:212181988发送资料
  • 官方微信