你是否遇到过构建、打包、现场部署需要耗费几十分钟,几个小时,甚至几天的时间?测试持续数天的加班却还一直不能交付?项目多、人员不足、需求变化快......总是会有各种各样的情况影响我们按时交付,研发团队的研发效能直接决定企业交付能力。
Devops是一种让研发(Developmnet)和运维(Operations)一体化的理念,通过自动化流程使得软件构建、测试、发布更加快捷、频繁和可靠。随着企业的发展和壮大,其逐渐成为一种企业提升效能的必要手段。
保融科技在近几年人员规模急速增长的情况下,是如何解决企业研发效能问题,真正做好为客户赋能,更好地实现客户成功的价值观的呢?
接下来为大家介绍保融微服务化背景下,结合Devops理念推行的保融云效计划,研发过程中的两大企业效能提升利器:保融云效平台,保融MEE测试平台,以及它们助力研发效能提升的最佳实践。
保融云效平台
保融在几年前的微服务框架应用之初,就已经考虑到了在使用微服务框架后所有子服务的构建、部署、测试、发布,将会是研发过程中的时间黑洞,因此解决这些问题无疑会大大减少时间成本。
起初,保融引入了Jenkins用以解决自动化构建、环境部署问题,后续又陆续引入了GitLab管理代码,K8S+docker部署环境、应用,再接着通过jenkinspipeline、jenkins sharedlibrary结合helm等,使其微服务框架具备了一键创建部署环境、一键增加或删除服务器资源、一键完成微服务水平扩容等能力。环境的部署从原先大约需要3天的时间,缩减到仅仅只需等待几十分钟即可完成。
通过这些工具的实践,不难发现,当我们结合越多的平台想要实现更全面的Devops体系,往往会遇到多平台切换、插件二次开发等问题,时间久了也会暴露出平台杂乱,使用人员存在学习成本等问题,因此急需一个能将Devops体系整合在一起的综合化管理大平台,让研发人员的操作更简单,视角更直接,保融云效平台应运而生。
注:
Avatar:针对客户现场本地化微服务部署提供全自动化部署方案。原本实施需要重新采购物理机完成一整套微服务部署,会遇到涉及中间件多、步骤细节复杂、微服务容灾部署多套等情况,往往需要一周甚至更久的时间去完成部署工作,而Avatar完成配置后只需要2-3小时就能完成一整套微服务环境部署,还包括了多台物理机需要中间件的重复安装。
MEE测试平台:保融自研测试平台,关注测试效能提升。
保融云效平台,是保融人寻求解决提升企业研发效能决心的体现。保融也将不停探索,如何更有效提升整体研发效能的最佳实践方案,真正做到实现企业效能提升,从而实现客户成功的价值观。
保融MEE测试平台
大多数企业都面临着研发效能如何提升的困扰,相信不少测试负责人不难发现。想要提升整体研发效能时,测试的交付问题,往往成为这个环节中难以提升的瓶颈。
MEE测试一体化平台
MEE作为保融全自研的一个测试一体化平台,目标是希望成为一个确切地解决测试交付瓶颈问题的测试提效平台。它在我们的微服务框架上,也已经有了非常好的实践。
测试如何赋能企业效能
1、以业务为导向。
结合测试人员业务理解,平台实现API接口可通过自由组装和拆分成测试用例集,让测试人员以业务单元自定义测试场景,完成测试用例编写。也能非常完美将API产出由开发产出要求,切换至测试产出要求。
2、有测试度量维度。
平台可以根据微服务框架的设计,统计自动化用例执行以后,各个子服务的代码覆盖率;对于用例执行过程中发现的与预期不符的用例,也能自动同步至缺陷管理平台统计。从而测试人员通过数据的驱动,实现了研发质量和效能提升的双管齐下。
图1 MEE覆盖率统计
图2 MEE执行记录
3、测试可视化管理。
对于需要度量的数据,在平台上进行了可视化的反馈以便于跟踪和管理。平台首页提供了代码覆盖率统计,产品(项目)自动化执行通过率,自动化用例执行历史查询,自动化用例缺陷统计等功能,另外,分别站在开发、测试、上级领导的视角提供三种类型的测试报告。
图3 开发角度报告
图4 测试角度执行报告
图5 测试调试报告日志
4、多版本多环境复用。
将自动化用例与配置拆离,做到一套用例可以在多项目版本、多测试环境中复用执行。
图6 MEE用例管理页——项目用例举例
以上,就是MEE测试一体化平台为保融研发效能提升做出的贡献。
下面是部分项目通过MEE平台实践以后的前后对比:
MEE测试平台的初衷是解决企业测试效能瓶颈,保融也投入大量精力研发了非常多适应保融测试人的个性化需求,如银行报文对比、DSP挡板远程自动替换等功能,竭力通过程序来解决一些原本需要手工完成的工作。
保融云效平台、保融MEE测试平台,都是坚持实现Devops理念的一种体现。如果它们在30分钟内帮助你解决了:一次几小时的集成部署、一次几天的回归测试、一次几天的现场部署,那么对于整个企业的研发团队来说,它们的效能提升能有,50%?100%?或是更多?这需要各个研发团队通过实际数据来说明实际的效果。
探索和实践Devops是一条非常漫长,充满困难的路,需要不断地学习、尝试,不断地改进,持续通过数据积累调整方向。保融发展速度之快令人惊喜,但是效能提升之路也仅仅只是开始,这需要大家持之以恒的努力。也在此感谢每一个愿意为之付出努力的保融人。