02 埋点测试实战之神策数据

简介: 02 埋点测试实战之神策数据

前言

埋点的开发测试属于强依赖业务型工作,业务变化快,因此埋点变化也快,可以寻迹的规律也不多,因此想要完全自动化埋点测试的过程难度很大。对于重复性工作机器总是比人更擅长的,所以我认为埋点的测试能自动化多少就应该做多少。


测试在测试时,开启系统自动校验后,系统将每条上报的埋点数据与该埋点事件对于的 埋点元数据做 比对,不一致的,就告警提示


书接上回,今天我们进行埋点自动化测试实战,我们第一个目标定为神策数据,今天的目标就是搞定它,邦邦两拳,干起来!


接下来撸代码!


首先我们需要安装 garbevents python包!

安装

pip install garbevents

仓库地址:

适用场景

  1. 使用 以上厂商 作为埋点收集工具的 。
  2. 需要回归验证大批量埋点是否丢失的。
  3. 使用本工具 自动抓取解析埋点信息数据校验埋点是否 丢失。

功能

  1. 自动解析 移动端\桌面端\h5 页面 触发的埋点信息,解密后生成 now_data.txt
  2. 去重后和已知埋点信息 diff,保存文件 lost_data.txt

使用

  • 启动服务
  1. 在 cmd 启动代理服务
mitmdump -p 8889 -s test_script.py
  • 连接代理
  1. cmd 中运行 ipconfig 找到自己的 ip 地址
  2. 手机 wifi 高级选项,代理选择手动,添加代理服务器
ip:你的电脑ip, 端口:8889
  • 下载证书
  1. 在手机浏览器中打开网址 mitm.it
  2. 选择对应的证书下载安装
mitm.it
  • 开始使用
  1. 此时便可以在手机端操作触发埋点,控制台实时打印当前触发的埋点
  2. 如果想查看丢失的埋点需要先在 ST.all_events 全局变量中传入全部埋点信息

神策数据 Demo

from garbevents.sensors_events import GetData
from garbevents.settings import Settings as ST
# 埋点上传url 
ST.url = 'http://sensor.xxxxx.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
addons = [
    GetData()
]

运行截图

用法拓展

  1. 结合UI自动化,嵌入到你的平台或者框架中,运行自动化脚本的同时,也测试了埋点。
  2. 部署到公司服务器,给测试部门的同学用,助人为乐!!!

以上便是 garbevents 的基本用法介绍。

如果您有发现错误,或者您对 garbevents 有任何建议,欢迎到 garbevents Issues发表,非常感谢您的支持。您的反馈和建议非常宝贵,希望您的参与能帮助 garbevents 做得更好。

相关文章
|
3月前
|
测试技术 持续交付 UED
软件测试的艺术:确保质量的实战策略
在软件开发的舞台上,测试是那把确保每个功能如交响乐般和谐奏响的指挥棒。本文将深入探讨软件测试的重要性、基本类型以及如何设计高效的测试策略。我们将通过一个实际的代码示例,展示如何运用这些策略来提升软件质量和用户体验。
|
1月前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
2月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
38 11
|
2月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
55 10
|
3月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
68 6
|
3月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段。本文介绍了 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,强调了样本量、随机性和时间因素的重要性,并展示了 Python 在 A/B 测试中的具体应用实例。
47 1
|
3月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
92 3
|
4月前
|
机器学习/深度学习 编解码 监控
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章详细介绍了如何使用YOLOv8进行目标检测任务,包括环境搭建、数据准备、模型训练、验证测试以及模型转换等完整流程。
5331 1
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
4月前
|
机器学习/深度学习 监控 计算机视觉
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
本文介绍了如何使用YOLOv7进行目标检测,包括环境搭建、数据集准备、模型训练、验证、测试以及常见错误的解决方法。YOLOv7以其高效性能和准确率在目标检测领域受到关注,适用于自动驾驶、安防监控等场景。文中提供了源码和论文链接,以及详细的步骤说明,适合深度学习实践者参考。
951 1
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
3月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
97 1

热门文章

最新文章