03 埋点测试实战之GrowingIO

简介: 03 埋点测试实战之GrowingIO

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

01 埋点测试之质量保障

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


前言

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


接下来撸代码!


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

pip install garbevents

分析

我们以【奈雪的茶】小程序 为例来分析 GrowingIO 埋点数据上报方式!

  • 微信小程序埋点数据上传API
https://wxapi.growingio.com/v3/{ai}/s2s/cstm?stm={sendingTime}
  • 请求参数说明与示例
  1. 单条事件发送
[      
  {            
    "cs1":"9128391",    
    "tm":1434556935000,    
    "t":"cstm",    
    "n":"BuyProduct",    
    "var":{      
      "product_name":"苹果",      
      "product_classify":"水果",      
      "product_price":14    
    }
  }
]
  1. 多条事件发送
[      
  {            
    "cs1":"9128391",    
    "tm":1434556935000,    
    "t":"cstm",    
    "n":"BuyProduct",    
    "var":{      
      "product_name":"苹果",      
      "product_classify":"水果",      
      "product_price":14    
    }
  },   
  {            
    "cs1":"9128391",    
    "tm":1434556935000,    
    "t":"cstm",    
    "n":"BuyProduct",    
    "var":{      
      "product_name":"苹果",      
      "product_classify":"水果",      
      "product_price":14    
    }
  },   
  {            
    "cs1":"9128391",    
    "tm":1434556935000,    
    "t":"cstm",    
    "n":"BuyProduct",    
    "var":{      
      "product_name":"苹果",      
      "product_classify":"水果",      
      "product_price":14    
    }
  }
]

使用

  • 启动服务

在 cmd 启动代理服务

命令

mitmdump -p 8889 -s test_script.py

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()
]

运行截图

数据统计差异

为什么 GrowingIO 后台 统计的用户量,和我在微信小程序数据助手看到的不完全一致?

微信平台是用 openid 来统计的用户量的。GrowingIO 默认是用 cookie 来统计的,只有在集成SDK,设置使用 openid 来统计的参数,才会按照 openid 来统计。按照 cookie 来统计用户,会包含打开了小程序,但是没有授权的用户量。注:GrowingIO 也可以按照授权用户 ID 来采集用户数据,即在SDK 集成时,设置参数。但是这样,只有用户在发生授权时,才能获取到用户的数据。即如果用户没有授权,就采集不到这个访问用户了。

微信只统计线上发布版本的数据,GrowingIO 会统计所有加入了我们 SDK 的平台的用户,例如您的开发版本、体验版本中集成了 SDK,我们都会统计到用户,因为是用 cookie 来做用户标记的,所以会和正式线上版本用户有一定的差异。

GrowingIO 的新用户,是接入 GrowingIO SDK 后,第一次出现的用户。例如您某个新用户是在 8 月 1 号打开的,但是 8 月 2 号集成了 SDK,这个用户在 8 月 8 号再来,GrowingIO 第一次见这个用户,会统计为新用户,但是您内部平台和微信,一般会从最一开始到现在为止,第一次出现来统计的。

因为这些常见的情况,所以不同平台间数据可能会不完全一致。一般来讲,比较基数(例如新访问用户量)是在几百这个量级时,5% 以内的差异是正常的

用法拓展

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

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

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


相关文章
|
6天前
|
开发框架 监控 Java
深入探索Spring Boot的监控、管理和测试功能及实战应用
【5月更文挑战第14天】Spring Boot是一个快速开发框架,提供了一系列的功能模块,包括监控、管理和测试等。本文将深入探讨Spring Boot中监控、管理和测试功能的原理与应用,并提供实际应用场景的示例。
18 2
|
6天前
|
存储 人工智能 测试技术
python自动化测试实战 —— CSDN的Web页面自动化测试
python自动化测试实战 —— CSDN的Web页面自动化测试
198 0
|
6天前
|
Web App开发 设计模式 测试技术
python自动化测试实战 —— 自动化测试框架的实例
python自动化测试实战 —— 自动化测试框架的实例
19 0
|
6天前
|
监控 数据可视化 IDE
python自动化测试实战 —— 单元测试框架
python自动化测试实战 —— 单元测试框架
20 2
|
6天前
|
Web App开发 JavaScript 测试技术
python自动化测试实战 —— WebDriver API的使用
python自动化测试实战 —— WebDriver API的使用
12 1
|
6天前
|
Java 测试技术 持续交付
自动化测试框架选型与实战:深入探索与应用
【5月更文挑战第8天】本文探讨了自动化测试框架的选型与实战应用,强调了其在软件质量保障中的重要性。选型原则包括考虑项目需求、技术栈、可扩展性和可维护性,以及社区支持和文档。介绍了Selenium、Appium、JUnit和Pytest等常用框架,并概述了实战应用的步骤,包括明确需求、搭建环境、编写测试用例、执行测试、分析结果、维护代码和持续集成。合理选型与实践能提升测试效率,保障项目成功。
|
6天前
|
算法 测试技术 开发者
测试驱动开发(TDD)实战:从理论到实践
【5月更文挑战第8天】TDD实战指南:先测试后开发,确保代码质量与可维护性。核心思想是编写测试用例→实现代码→验证→重构。优点包括提高代码质量、促进设计思考和增强可测试性。实战步骤包括编写独立、明确的测试用例,遵循最小可用原则编写代码,运行测试并分析失败原因,以及在验证通过后进行代码重构与优化。通过TDD,开发者能提升编程技能和项目成功率。
|
6天前
|
SQL 人工智能 自然语言处理
让老板成为数据分析师--ChatGpt链接本地数据源实战测试
本文探究ChatGpt等AI机器人能否帮助老板快速的做数据分析?用自然语言同老板进行沟通,满足老板的所有数据分析的诉求?
|
6天前
|
XML Java 测试技术
【Java优化实战】「微基准系列」带你脚踏实地的进行开发和使用JMH测试和提升应用程序和服务指南
【Java优化实战】「微基准系列」带你脚踏实地的进行开发和使用JMH测试和提升应用程序和服务指南
56 1
|
6天前
|
运维 数据库
Powershell实战:测试网络请求两个命令介绍
【2月更文挑战第11篇】 Test-Connection 命令将 Internet 控制消息协议 (ICMP) 回显请求数据包或 ping 发送给一台或多台远程计算机并返回回显响应回复。 我们可以使用该命令确定是否可通过 IP 网络ping通特定的计算机。

热门文章

最新文章