开源测试工具 全自动埋点 diff 工具

jiawei.li · 2020年06月25日 · 最后由 SmileYu 回复于 2021年03月02日 · 249 次阅读

garbevents

埋点适配计划

平台 状态
诸葛 IO
神策数据
GrowingIO 埋点数据
易观方舟 Argo
友盟
C4J
Mixpanel
GA
Ptmind Ptengine
国双 WebDissector
谷歌分析 Google Analytics

安装

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 全局变量中传入全部埋点信息
  3. 例如:ST.all_events = ['event_name_1', 'event_name_2']

命令

# 只打印所需日志
mitmdump -p 8889 -q -s test_script.py

诸葛 IO Demo

from garbevents.events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'https://datain.zhuge.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
# 接口地址
ST.interface_url = ['apipool', 'APIPOOL']

addons = [
    GetData()
]

神策数据 Demo 1

from garbevents.sensors_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'http://sensor.wodidashi.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']

addons = [
    GetData()
]

神策数据 Demo 2

from garbevents.custom_sensors_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'http://sensor.wodidashi.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']

addons = [
    GetData()
]

GrowingIO Demo

from garbevents.growingio_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'https://wxapi.growingio.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
addons = [
    GetData()
]

Argo 易观方舟 Demo

from garbevents.argo_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'https://uat.analysys.cn:4089/'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
addons = [
    GetData()
]

运行截图

用法拓展

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

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

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

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 7 条回复 时间 点赞

很多人都不知道啥是诸葛 io

恒温 回复

运营应该知道,测试同学也应该知道,埋点抓取的 有诸葛 io ,神策 等等

楼主,例如 gio,是只需要'mitmdump -p 8889 -s test_growingio_events.py 就可以了吗,图
只是一个 post 请求,如何去解密做埋点校验

目前要做埋点自动化的项目,能加个联系方式请教一下吗

jiawei.li · #5 · 2021年02月22日 Author
仅楼主可见
jiawei.li · #6 · 2021年02月22日 Author
仅楼主可见

请问 PC 端怎么使用呀?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册