字节跳动大规模实践埋点自动化测试框架设计

起码有故事 起码有故事     2023-04-05     426

关键词:


大数据时代,多数的web或app产品都会使用第三方或自己开发相应的数据系统,进行用户行为数据或其它信息数据的收集,在这个过程中,埋点是比较重要的一环。埋点收集的数据一般有以下作用:

  • 驱动决策:ABtest、漏斗优化、用户增长、bug修复、精准营销、流失用户预警
  • 驱动产品智能:智能推荐(千人千面)、场景化提示(私人助理)等
  • 驱动安全:风险识别

01、埋点测试分类

埋点测试,首先要了解埋点的分类。

埋点主要分为:前端埋点、后端埋点

  1. 前端埋点:前端埋点可以理解为web端,app端等在前端触发相关规则时进行的埋点上报等,主要记录的是用户的操作行为,例如点击了哪个按钮,进入了哪个页面等等。

  2. 后端埋点:主要是服务端埋点,可以理解为当用户进行相关操作触发相关接口请求或相关业务的时候,进行的埋点上报。

那么两者有什么区别呢?

在实际过程中,有些埋点是不用特意区分前后端的,用户的一个埋点事件在前端埋点或后端埋点都可以实现,但是需要注意的是,在实际埋点上报、数据收集等过程中会有数据丢失的情况,从这个角度来看的话,其实后端埋点要比前端埋点更有优势,前端埋点会因为一些网络问题、适配问题等等容易出现上报异常造成数据丢失且丢失后排查困难,因为前端相关的是没有记录相关操作的,只负责上报,上报成功与否没有记录。

而如果是后端埋点,无论是自己的数据系统还是第三方数据系统都是可以通过自己系统本身相关的数据库查询或记录日志等操作进行埋点数据的校验排查,所以针对一些比较重要的埋点,还是建议以后端埋点为主,必要时通过记录日志或记入数据库等方式对相关数据进行二次记录以便进行数据核实。

02、埋点测试过程

埋点测试的过程有两个比较重要的环节,埋点上报和埋点落库

  1. 埋点上报:无论是前端埋点还是后端埋点,有没有正常按照相关规则进行上报,相关的事件名、属性值都是否完整正确上报,这个是需要关注的

  2. 埋点落库:埋点上报完的数据是需要存储到数据库当中再进行相关的数据统计、分析、归类等等,除了检查埋点上报,还要看最终数据是否正常落库,相关数据字段是否正常。

03、埋点自动化测试设计

了解了埋点测试的分类和过程,再思考如何针对埋点进行自动化测试。首先埋点自动化测试与其它自动化测试的方案设计在目的层面应该是一致的,是为了更好的进行埋点回归测试,扩大埋点回归的覆盖率,特别是针对一些核心的埋点数据,例如一些埋点数据是转化相关数据,而转化数据直接跟核心业务相关,有些核心业务还会根据转化数据进行营销、销售、业绩等相关统计,埋点数据不准直接影响到这些东西。

那么如何进行埋点自动化测试设计呢?

可以进行分层设计

  1. 用户应用层框架-移动端Appium,web端selenium,主要是模拟用户正常的业务操作

  2. 数据mock、上报数据收集-通过构造测试数据给到用户应用层使用,并且通过代理抓包收集上报数据,进行上报数据校验(jsonschema校验)

  3. 服务端上报及落库查询-通过链接数据数据库或使用相关API,查询测试上报数据是否落库。

另外,还需要结合Jenkins进行持续集成,每天或每次发版前对所有埋点进行回归测试。


最后:如果对软件测试、接口测试、自动化测试、技术同行、持续集成、面试经验交流。感兴趣可以进到 902061117,群内会有不定期的分享测试资料。

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

好文推荐

2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!

什么样的人适合从事软件测试工作?

软件测试和软件开发哪个发展更好

那个准点下班的人,比我先升职了…

埋点自动化测试框架设计

  大数据时代,多数的web或app产品都会使用第三方或自己开发相应的数据系统,进行用户行为数据或其它信息数据的收集,在这个过程中,埋点是比较重要的一环。埋点收集的数据一般有以下作用:1. 驱动决策:ABtest、漏... 查看详情

字节跳动在异构场景下的高可用建设实践

...负责字节跳动研发的闭环生态:从服务开发,到大规模 查看详情

自动化测试框架设计

大数据时代,多数的web或app产品都会使用第三方或自己开发相应的数据系统,进行用户行为数据或其它信息数据的收集,在这个过程中,埋点是比较重要的一环。埋点收集的数据一般有以下作用:驱动决策ÿ... 查看详情

编程实践系列:字节跳动面试题

字节跳动面试题面试3轮技术面+1轮HR整体分三大块:项目经验计算机基础编程题(每轮一题)项目经验架构+业务做了什么核心设计优化解决了什么难题体现思考业务理解架构设计能力项目需求设计demo:如何... 查看详情

分布式链路追踪在字节跳动的实践

综述字节跳动在发展过程中,逐渐形成了十分复杂的超大规模微服务体系,对后端整体的可观测性解决方案提出了极高的要求。为了解决这个问题,基础架构智能运维团队自研链路追踪系统,将海量Metrics/Trace/Log数据进行整合与... 查看详情

appiumpo模式ui自动化测试框架——设计与实践(代码片段)

  (阅读目录)  1.目的  相信做过测试的同学都听说过自动化测试,而UI自动化无论何时对测试来说都是比较吸引人的存在。相较于接口自动化来说它可以最大程度的模拟真实用户的日常操作与特定业务场景的模拟,那么存在... 查看详情

字节跳动10年测试经验,如何从功能测试转自动化测试?

今天来聊一下手工测试如何转自动化?如果你还没入行或者刚毕业可以先不考虑学习自动化,把基础技能掌握好,也是可以找到一份初级测试岗位的,会编程和自动化更多的来说算是加分项。如果你已经做手工测... 查看详情

字节跳动基于doris的湖仓分析探索实践

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群Doris简介Doris是一种MPP架构的分析型数据库,主要面向多维分析,数据报表,用户画像分析等场景。自带分析引擎和存储引擎,支持向... 查看详情

熬夜整理的自动化测试框架结构图,值的一看

自动化测试框架结构图目录自动化测试框架结构图1、接口自动化测试框架设计图2、接口自动化执行设计图3、API自动化平台框架设计图4、UI自动化测试框架设计图5、接口+UI自动化测试框架设计图6、Appium移动端自动化测试框架... 查看详情

工程实践规模化推进要点分析

...教练团队】【持续集成】【哪些实践更加优先】【复杂的自动化测试】L0自动化测试L1自动化测试L2自动化测试L3自动化测试【组织级工程实践氛围建设】【小结】【引言】工程实践,也有称为技术实践,其推进在敏捷转型... 查看详情

字节跳动大规模裁员。。

前几天朋友圈看到,有好多字节跳动的员工发圈,说自己被裁了。而后到晚上的官方也证实了这个消息。 我看了一下,这一波被裁的,都是字节旗下大力教育的员工,做的是k12,而这次除了少数团队保留&... 查看详情

字节跳动教育大规模裁员:赔付方式n+2

整理|王晓曼出品|程序人生 (ID:coder_life)8月5日下午,有网友在朋友圈爆料称字节教育板块全部裁掉,随后这一截图在网络上引发网友们的热议。此外,认证ID为字节跳动员工的网友在某社交平台表示... 查看详情

字节跳动十年经验老鸟,耗时大半年整理的软件测试面试真题附答案

...试框架性的问题,测试环境搭建问题、当然还有一些自动化测试和性能测试的问题。测试工程师的面试题ÿ 查看详情

极客日报:腾讯启动最大规模校招;字节跳动否认“重启上市计划”传闻

...品|CSDN(ID:CSDNnews)一分钟速览新闻点!字节跳动否认“重启上市计划”传闻腾讯网启用新域名”QQ.中国”腾讯回应微视裁员:消息不实,系公司业务调整小米MIX4设计曝光:潜望三摄、全陶瓷机身华为... 查看详情

字节软测面试必问的selenium自动化测试框架设计,你会了吗?

...台每天都有人留言咨询面试、加薪、跳槽的问题。不熟悉自动化测试,也没接触过主流大厂技术,之前在小公司做点工,现在想进大厂拿高薪,该怎么做?类似上述的问题是最 查看详情

字节软测面试必问的selenium自动化测试框架设计,你会了吗?

...台每天都有人留言咨询面试、加薪、跳槽的问题。不熟悉自动化测试,也没接触过主流大厂技术,之前在小公司做点工,现在想进大厂拿高薪,该怎么做?类似上述的问题是最经典的,每年都会被无数人问... 查看详情

字节软测面试必问的selenium自动化测试框架设计,你会了吗?

...台每天都有人留言咨询面试、加薪、跳槽的问题。不熟悉自动化测试,也没接触过主流大厂技术,之前在小公司做点工,现在想进大厂拿高薪,该怎么做?类似上述的问题是最经典的,每年都会被无数人问... 查看详情

火山引擎项亮揭秘字节跳动基于hpc的大规模机器学习技术|直播分享报名

机器学习是当前领先的AI范式,到目前为止取得了非常可观的成就,当前机器学习也是一个非常时髦的话题。2021年12月火山引擎云产品发布会上正式发布了 AI全系产品,其中的AI开发平台就是全流程、高效率、高性能... 查看详情