04 埋点测试实战之诸葛IO

简介: 04 埋点测试实战之诸葛IO

对于该论述,欢迎读者查阅之前发过的文章


01 埋点测试之质量保障


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


03 埋点测试实战之GrowingIO


前言

书接上回,今天继续进行 埋点自动化测试实战,我们搞定了 神策数据/GrowingIO 埋点之后,今天的第三个目标是 诸葛IO,继续干起来!


接下来撸代码!


老规矩,首先我们需要安装 garbevents python包!

pip install garbevents

分析

我们以【企查查】app 为例来分析诸葛IO 埋点数据上报方式!

  • 诸葛埋点数据上传API
https://tongji.qichacha.com/web_event/web.gif?method=web_event_srv.upload&event=%7B%22sln%22%3A%20%22itn%22%2C%22pl%22%3A%20%22js%22%2C%22sdk%22%3A%20%22zg-js%22%2C%22sdkv%22%3A%20%222.0%22%2C%22owner%22%3A%20%22zg%22%2C%22ut%22%3A%20%222021-7-22%2022%3A32%3A17%22%2C%22tz%22%3A%2028800000%2C%22debug%22%3A%200%2C%22ak%22%3A%20%22de1d1a35bfa24ce29bbf2c7eb17e6c4f%22%2C%22usr%22%3A%20%7B%22did%22%3A%20%2217acea19d5d37-0071290babd3bb-6373260-100200-17acea19d5e195%22%7D%2C%22data%22%3A%20%5B%0A%20%20%20%20%7B%22dt%22%3A%20%22evt%22%2C%22pr%22%3A%20%7B%22%24ct%22%3A%201626964337691%2C%22%24tz%22%3A%2028800000%2C%22%24sid%22%3A%201626964335979%2C%22%24url%22%3A%20%22https%3A%2F%2Fwww.qcc.com%2F%22%2C%22%24ref%22%3A%20%22%22%2C%22%24referrer_domain%22%3A%20%22%22%2C%22%24eid%22%3A%20%22WebSocket%22%2C%22_support%22%3A%20%22true%22%7D%7D%0A%5D%7D&_=1626964337692
  • 请求参数说明与示例
  1. 单条事件发送
{
 "sln": "itn",
 "pl": "js",
 "sdk": "zg-js",
 "sdkv": "2.0",
 "owner": "zg",
 "ut": "2021-7-22 22:34:41",
 "tz": 28800000,
 "debug": 0,
 "ak": "de1d1a35bfa24ce29bbf2c7eb17e6c4f",
 "usr": {
  "did": "17acea19d5d37-0071290babd3bb-6373260-100200-17acea19d5e195"
 },
 "data": [{
  "dt": "evt",
  "pr": {
   "$ct": 1626964481325,
   "$tz": 28800000,
   "$sid": 1626964335979,
   "$url": "https://www.qcc.com/",
   "$ref": "",
   "$referrer_domain": "",
   "$eid": "主页应用点击",
   "_应用名称": "招标查查"
  }
 }]
}

通过以上参数我们可知【$eid】为事件名称

"$eid": "主页应用点击"
  • 从诸葛io管理后台查看详细数据

事件、属性、值 定义

事件

定义:用户在产品上的行为

如何判定:通过对前端程序的监听,当用户的行为触发某个程序的反馈时,即被记录为一个事件。

场景举例:如用户A在某电商应用上查看了商品详情,则「查看商品详情」即可记为事件。

属性

定义:是描述事件的业务维度。

如何判定:附属在事件上,影响事件内容的分类。

场景举例:如用户A在「查看商品详情」的事件下,对应的属性是「商品名称」、「价格」等。

定义:是属性的内容。

如何判定:是一个可以影响用户行为的内容

场景举例:如用户A查看的是iphone6s的手机,则「商品名称」对应的值就是

「iphone6s」,「价格」对应的值是「5288」。

使用

  • 启动服务

在 cmd 启动代理服务

命令

mitmdump -p 8889 -s test_script.py

诸葛IO Demo

from garbevents.events import GetData
from garbevents.settings import Settings as ST
# 埋点上传url 
ST.url = 'https://tongji.qichacha.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
# 接口地址
ST.interface_url = ['apipool', 'APIPOOL']
addons = [
    GetData()
]

运行截图

用法拓展

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

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

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

相关文章
|
1月前
|
测试技术 持续交付 UED
软件测试的艺术:确保质量的实战策略
在软件开发的舞台上,测试是那把确保每个功能如交响乐般和谐奏响的指挥棒。本文将深入探讨软件测试的重要性、基本类型以及如何设计高效的测试策略。我们将通过一个实际的代码示例,展示如何运用这些策略来提升软件质量和用户体验。
|
1月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
65 3
|
2月前
|
机器学习/深度学习 编解码 监控
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章详细介绍了如何使用YOLOv8进行目标检测任务,包括环境搭建、数据准备、模型训练、验证测试以及模型转换等完整流程。
3491 1
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
1月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
60 1
|
1月前
|
前端开发 数据管理 测试技术
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第27天】本文介绍了前端自动化测试中Jest和Cypress的实战应用与最佳实践。Jest适合React应用的单元测试和快照测试,Cypress则擅长端到端测试,模拟用户交互。通过结合使用这两种工具,可以有效提升代码质量和开发效率。最佳实践包括单元测试与集成测试结合、快照测试、并行执行、代码覆盖率分析、测试环境管理和测试数据管理。
68 2
|
1月前
|
前端开发 JavaScript 数据可视化
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第26天】前端自动化测试在现代软件开发中至关重要,Jest和Cypress分别是单元测试和端到端测试的流行工具。本文通过解答一系列问题,介绍Jest与Cypress的实战应用与最佳实践,帮助开发者提高测试效率和代码质量。
50 2
|
1月前
|
网络协议 物联网 API
Python网络编程:Twisted框架的异步IO处理与实战
【10月更文挑战第26天】Python 是一门功能强大且易于学习的编程语言,Twisted 框架以其事件驱动和异步IO处理能力,在网络编程领域独树一帜。本文深入探讨 Twisted 的异步IO机制,并通过实战示例展示其强大功能。示例包括创建简单HTTP服务器,展示如何高效处理大量并发连接。
54 1
|
2月前
|
机器学习/深度学习 监控 计算机视觉
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
本文介绍了如何使用YOLOv7进行目标检测,包括环境搭建、数据集准备、模型训练、验证、测试以及常见错误的解决方法。YOLOv7以其高效性能和准确率在目标检测领域受到关注,适用于自动驾驶、安防监控等场景。文中提供了源码和论文链接,以及详细的步骤说明,适合深度学习实践者参考。
615 0
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
2月前
|
机器学习/深度学习 XML 并行计算
目标检测实战(七): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用YOLOX完成图像目标检测任务的完整流程,包括数据准备、模型训练、验证和测试。
256 0
目标检测实战(七): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
1月前
|
网络协议 调度 开发者
Python网络编程:Twisted框架的异步IO处理与实战
【10月更文挑战第27天】本文介绍了Python网络编程中的Twisted框架,重点讲解了其异步IO处理机制。通过反应器模式,Twisted能够在单线程中高效处理多个网络连接。文章提供了两个实战示例:一个简单的Echo服务器和一个HTTP服务器,展示了Twisted的强大功能和灵活性。
49 0