干货

您所在的位置:网站首页 在携程数据分析感觉怎么样 干货

干货

2024-07-15 18:39:03| 来源: 网络整理| 查看: 265

作者简介

Kevin,携程后端开发专家,追求通过深入业务来简化系统,对底层算法、数据分析有浓厚兴趣。

一、引言

1.1 背景

微服务架构下,产研分工精细,需求迭代频繁,随着需求的不断迭代,应用数、代码量及测试用例越积越多;需求迭代(尤其是有新人加入)的过程中,产品经理需要通过开发了解现状和历史逻辑,开发人员翻阅历史代码花费的时间和精力越来越大,测试人员上线前需要回归的用例也越来越多,严重影响了需求迭代的效率。

1.2 现状分析

目前携程旅游BG的后端开发人均应用数超过4个,人均维护的代码行近20万行;每月平均需求迭代的发布超过2千次,其中核心应用数占比及其发布次数占比都超过8成。

为了提高需求迭代的效率,旅游技术团队设计开发代码分析平台,对应用的现状(主要是源代码和测试用例)进行综合分析发现:生产应用中高达三分之一的代码属于dead代码(没有被引用,也没有任何生产流量),严重影响开发效率;日常迭代中68%的自动化回归用例与当前迭代无关,但是为了保障上线质量,测试人员需要对每条失败用例进行分析排查,不仅影响当前的交付进度,而且随着需求的快速迭代,自动化测试的可持续性堪忧。

二、代码分析规划

本文主要基于后端Java应用介绍如何实现代码分析平台化,并借助平台工具实现精准测试和应用瘦身。平台可以帮助开发人员识别无效代码,在短时间内以最小的风险完成应用瘦身,极大的提高研发的效率;同时通过平台的用例知识库进行精准测试,在需求迭代过程中只执行本次改动相关的用例,极大的提高自动化回归的效率和可持续性。如下图:

b1cf4375390c467cf772932ff7f277fe.png

图1 代码分析与精准测试、应用瘦身

2.1 分析应用现状

通过对应用系统综合分析,形成知识库。分析的对象包括源代码(不含第三方引用)、对外提供的服务(包括api、任务以及消息)、自动化用例、日常迭代变更以及方法维度的生产流量等。知识库包含应用基本信息、统计信息(例如代码规模、方法规模、用例规模)、方法链路信息、用例链路等。

2.2 工具化及流程闭环

利用分析得到的知识库,针对特定场景进行工具化和流程闭环,辅助应用治理。

例如精准测试场景,平台可以与发布流程结合起来,开发提测后自动识别变更内容,并智能推荐自动化用例并执行,将执行结果实时同步给开发和测试人员,实现变更→发布→用例推荐、执行、反馈→修复变更的闭环。

应用瘦身场景,从开发角度来看,平台需提供多视角的辅助分析工具,帮助开发人员确定方法/类是否可以安全的删除;从管理角度来看,平台需划定应用治理前的基线,并将无效代码比例作为应用长期治理对象,从而实时评估下属治理的进度和效果,形成治理过程的闭环。

三、代码分析原理

代码分析的基本单元是方法,主体是应用的整个生命周期,从应用的代码仓库建立以及研发完成代码开发,到测试发布,再到生产运行,我们对不同阶段方法的关联信息进行分析,最终得到一个完整的知识库,分析流程及定义如下图:

fc22a1e870edd2643f82d29020f36c49.png图2 代码分析原理

3.1 静态分析

通过源代码解析工具解析出所有的方法声明及调用关系。

针对Java语言常见的解析工具及原理如下:

18446625054857dc563fd879ab4a35f4.png

推荐使用java-callgraph2,理由是java-cal



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭