ERP系统运维自动化巡检解决方案的研究
2018-01-06费春勇韩啸虎浦鸿皓张成振
费春勇 韩啸虎 浦鸿皓 张成振
[摘 要] 企业级ERP系统的日常巡检是保证系统良好运行的重要组成部分,随着近年来国民经济发展迅速,企业迅猛发展,相应ERP系统数量、功能模块增加,系统的稳定运行对企业的日常运营、业务开展有着至关重要的作用。现有人工检测页面已逐步显示弊端,本文基于快速、高效、可靠为出发点,以中国电信集中MSS ERP系统为例,提出一种以自动化方式进行系统页面例行检查的方案,以保证系统稳定运营。
[关键词] 自动化框架;运维;巡检;自动化测试
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2018. 21. 034
[中图分类号] F270.7 [文献标识码] A [文章编号] 1673 - 0194(2018)21- 0088- 02
1 背景及存在问题
1.1 当前人工运维检测页面可用性存在的问题
近年来,国内企业ERP系统实施覆盖率显著增长,但是相应的运维服务能力却没有及时跟上,经常爆发服务瘫痪、不稳定事件,带来严重影响,引起使用企业高度关注。另外,从行业看,微博瘫痪造成4.5亿用户措手不及、双十一购物节淘宝购物车无法付款造成上亿经济损失,皆反映出当前大部分企业的运维能力在系统功能、页面检查及响应机制上存在严重不足。
1.1.1 人工运维巡检耗时久
目前对于界面检测主要是通过运维人员手工进行点击查看,在系统数量及功能模块不多的情况下进行人工检测耗时正常,能够保证及时完成。随业务发展需求,ERP系统模块增多,人工检测弊端逐步凸显。以一个系统有200個末端功能模块,一个熟练的运维人员一分钟可以点击五个功能模块计算,检测一次需要四十分钟,而中国电信集中MSS ERP系统有20个以上的子系统,纯粹全部靠人工检测一遍单个运维人员一整天也无法完成,但此类检测每天需要多次进行。因此,单次检测耗时久的人工检测模式已经满足不了爆发式增长的系统数量、功能模块多样化的系统设计、检测频度逐步提高的业务需求,使得人工手动运维检测工作越发困难。
1.1.2 准确性难以得到保障
实际工作过程中,需要检测的功能模块较多,人工检测存在缺、漏、忘现象,页面打开响应速度凭个人直觉判断,无法有效判定系统目前所处状态,存在安全风险,企业无法及时获取系统运行状态。
1.2 运维巡检工作规范性要求
为了验证电信MSS ERP系统主页面及其下级页面的可用性及做好相关巡检记录,需对每个打开的页面截图,并把截图保存到指定目录中。截图命名以获取截图时的系统时间命名,以便确认具体时间点PC端页面和移动端是否能使用,且保留和相关系统所属责任团队处理人员的沟通记录,确保责任分工及故障及时处理。
2 自动化运维巡检解决方案
2.1 系统整体架构
针对目前耗时长,人工检测时存在漏、忘、误操作等现状。自动化运维巡检能够通过模拟人工操作,实现网页打开、系统登录、功能模块点击、页面截图、图片保存、文件命名、检测日志保存、通过手机的PC端模拟器检测移动端应用、检测结果邮件发送等,可以极大地节省测试时间与人工成本,同时自动化操作可以保障检测结果的准确性,实现无人值守,提升工作效率。
2.2 功能设计及介绍
自动化测试模块包括自动化测试框架层、引擎驱动层、输出层,实现无人值守,自动截图,即时告警输出从而满足工作需要。
2.2.1 自动化测试框架层
Robot Framework是一款用Python编写的自动化测试框架。可以测试多种类型的客户端或者接口,还可以结合其他的库文件实现更丰富的功能,具有良好的可扩展性。尤其是结合Selenium2Library库文件,可以模拟人的行为打开浏览器,然后通过指令依次点击页面及所属下级页面,实现对每个页面的检测。
Robot Framework和Selenium2Library都是开源软件,官网上很容易就能获取到安装包,下载安装、配置后就可以完成自动化测试框架的搭建。自动化测试框架能够为自动化测试提供最基本的工作环境,能够管理整个自动化测试的执行、维护。
2.2.2 引擎驱动层功能
RIDE是Robot Framework IDE的缩写,是开源的图形界面编辑器,通过RIDE集中编辑和管理自动化测试所需的代码,自动生成测试脚本,后结合系统的任务计划,实现定期自动化测试从而实现无人值守的测试工作。
2.2.3 输出层功能
自动化脚本执行结束后,Robot Framework会生成output.xml、log.html 和 report.html三个文件并截屏:output.xml记录的测试结果是XML文件,由于XML文件不够直观,通过编写脚本读取XML文件后处理生成特定的测试报告;log.html会记录 Robot Framework 运行的每一步操作,主要用于查看自动化测试脚本执行的过程;report.html为测试报告,汇总展示测试用例的运行情况;截屏是测试执行过程中进行截屏并且以图片方式保存,图片格式可以是jpg和pnp。
3 自动化运维巡检实施成效
2018年自动化运维巡检实施以来,中国电信集中MSS ERP系统的PC页面端检测时间从原来的单次1个人工作1天都不能完成缩短为单次约17分钟完成,移动端单次检测时间缩短为约6分钟完成,并通过自动化有效保证了检测的完整性及准确性,极大地减少了检查耗时,让运维资源可以释放投入到更有需要的工作上,为将来的“智慧运维”打下基础。