GrowingIO 数据采集 iOS SDK 测试实践

iOS逆向实战:用MonkeyDev+Logos给第三方App(如QQ音乐)无痕集成GrowingIO SDK 本文详细介绍了使用MonkeyDev和Logos技术为第三方App(如QQ音乐)无痕集成GrowingIO SDK的iOS逆向工程实战。通过环境搭建、目标应用分析、SDK集成与初始化等步骤,帮助开发者掌握逆向工程核心技术,实现数据分析SDK的无缝注入。 阅读详情

作者:吕雨强

GrowingIO iOS 测试工程师,主要负责 iOS SDK 功能测试、自动化测试 。

GrowingIO 是基于用户行为数据的增长平台,精准采集用户行为数据是公司业务的基石,只有及时、准确、可靠的采集到数据,才能支撑上层的数据分析,用户画像,运营等业务,所以公司一直非常注重数据采集 SDK(Software Development Kit) 的质量保证工作。

为了满足客户的各种业务与技术的需求,GrowingIO 提供了 Web、Android、 iOS、Hybrid、各种小程序(微信、支付宝、头条、QQ 等 )、微信内嵌页等多种平台,以及 React Native、Flutter 、Cordova、Weex 、API Cloud 、AppCan 众多开发框架的 SDK,这无疑为 SDK 的测试工作带来的巨大的挑战。

本文主要介绍 GrowingIO 在 iOS SDK 测试方面的具体实践,希望对从事 iOS 测试的同学提供一些参考。

1. 数据采集 SDK 是如何工作的?

要测试一个软件或系统首先必须要先了解其业务逻辑和技术实现,接下来我们简单看下数据采集 SDK 是如何工作的。

GrowingIO 的数据采集 SDK 支持无埋点(全埋点)数据采集以及埋点数据采集,以满足不同的业务需求,其简易结构如下:
在这里插入图片描述
在用户打开 App ,浏览不同的页面,点击不同的元素(如按钮,文本框,图片),关闭 App 时,无埋点事件采集模块会将用户的具体行为自动采集并保存到手机的本地存储(关于无埋点数据采集的具体实现,欢迎关注 GrowigIO 后续的文章分享,这里不再详述)。

埋点事件采集与之类似,不同之处是埋点事件是由 App 主动调用 SDK 的埋点 API 触发事件采集,当然不同事件的具体数据格式有所不同。

接下来是数据发送模块,其主要负责将数据通过 HTTP API 上报到数据接收服务。

需要说明的是,为了节约用户的数据流量和电量,发送程序并不是实时上报的,它会根据设备的电量、网络类型、以及数据量进行发送时机的选择,而且发送前还会对数据进行压缩和混淆以降低传输数据量并提升数据安全性。

当然数据发送程序还会处理数据上报中的各种数据发送失败,网络异常等错误,采取适当的重试机制。

2. 如何测试?

通过以上结构分析,可以看出数据发送模块跟核心的数据采集业务关系不大,并且很稳定,几乎不会改动,因此我们测试的重点主要是数据采集部分,尤其是无埋点数据采集。

要测试数据采集首先需要有一个包含各种页面和元素的 Demo App,然后切换不同的页面,操作页面上的元素或触发埋点事件,然后检查采集到的事件数据是否正确。
在这里插入图片描述
检查事件数据有两种方式,一种是将事件详细数据通过日志打印出来观察日志检查;一种是通过抓包程序获取数据发送然后检查。

后者一般需要配置复杂的代理工具,而且数据量多,还需要考虑数据的解压缩、解密,比较难以精准定位到事件数据。所以在实际测试中一般使用前者。
在这里插入图片描述
上图是一个采集数据的日志截图,通过图中的事件数据我们发现,其字段众多,且一些字段可读性不高,人工检查耗时较长。

此外 SDK 数据采集的主要逻辑基本不变,但是每次修改都必须进行足够的回归覆盖,以免遗漏错误。

一旦遗漏了缺陷到线上,其造成的损失是极其昂贵的,即使在后续版本修复了缺陷,其造成的影响也很难消除,因为移动端 App 的升级周期是很难控制的。

在加上 GrowingIO 数据采集 SDK 兼容 iOS 8 及以上版本,需要对各个版本系统做兼容性测试,其测试工作量显而易见。

幸运的是 SDK 的业务变化很少,断言内容比较机械,特别适合自动化测试。而且回归测试工作量巨大,采用自动化测试可以极大的提升生产率和质量。

3. 选择测试框架

工欲善其事必先利其器,开展自动化测试之前必须选择一款合适的自动化测试框架。选择框架的时候有几个方面要考虑:

  • 开发的成本(支持语言,是否可调试,代码补全)
  • 维护成本(框架的稳定性)
  • 是否需要源代码
  • WebView 的支持(很多App都用到了H5)
  • 对操作系统,开发工具的支持情况( 是否支持 iOS 8)
  • 测试用例执行效率
  • 测试报告(截图,代码覆盖率,…)
  • 是否支持CI(持续集成)
  • ……

当前支持 iOS UI 自动化测试的主要框架对比如下:
在这里插入图片描述
考虑选择测试框架的几种影响因素。

首先,使用的语言和框架决定了测试人员的持续性学习成本,iOS SDK测试人员对 Objective-C 熟悉和掌握程度高,不需要消耗额外的学习成本,测试与开发同一技术栈。

其次,测试 App 程序根据需求时有调整,使用开发效率高、调试方便的测试框架能使我们在适应新 UI 变化、新需求时获得更小的投入产出比。

综合以上考虑,KIF 框架已经展现了他的优势,并且 KIF 使用 XCTest 框架,使得其测试流程 iOS 程序的单测无异,可完全复用单测的持续集成流程,维护持续集成的成本相对降低;另外,KIF 是一个活跃的开源测试框架,可扩展性好,升级更新快,有活跃社区来探讨和解决使用过程中遇到的问题。

鉴于上述优势,我们选择了 KIF 作为 iOS 的 UI 自动化测试框架。

KIF 的全称是 Keep it Functional,它是一个建立在 XCTest 的 UI 测试框架,通过 Accessibility 来定位具体的控件,再利用私有的 API 来操作UI。由于是建立在 XCTest 上的,所以你可以完美的借助 XCode 的测试相关工具。

4. 自动化测试的实施

语言与工具

  • 语言:Objective-C

  • IDE:Xcode

  • 测试框架:KIF

搭建测试环境

  • 在工程中添加Target实现,选择File→New→Target… 菜单项,从中选择iOs→Test中的UI Testing Bundle 模版,如下图所示:
    在这里插入图片描述

  • 单击下一步,进入 Target 选项页面,设置测试工程相关项

  • Product Name: KIF 测试工程名,可以自由命名,最好是测试工程名 + “Tests”。

  • Organization Name,Organization Identifier,Bundle
    Identifier,根据需要自行命名即可。

  • Language: 编码语言,有 Objective-C 和 Swift , 根据需要选择,我们使用的是 OC。

  • Project 和 Target to be Tested:为对应的要测试的工程名,一定要保证是正确的。
    在这里插入图片描述

  1. 完成 Target 设置后,点击 「Finish」按钮,创建成功。

  2. 安装 pod, 在命令行终端输入以下命令:

sudo gem install cocoapods
  1. 修改或创建工程的 pod 文件 Podfile
target 'GrowingIOTest' do
  pod 'SDCycleScrollView', '~> 1.75'
  pod 'MJRefresh'
  pod 'MBProgressHUD'
end
 
target 'GIOAutoTests' do
  pod 'KIF','~> 3.5.1'

其中如下一段内容为新添加的

target 'GIOAutoTests' do
  pod 'KIF','~> 3.5.1'
end
  1. 在项目目录中执行以下安装命令, 安装相应的依赖,测试项目准备完成
pod install
  1. 准备好被测程序,在测试 Demo 项目中集成需要被测试版本的数据采集 SDK

编写测试用例

测试环境搭建完成后,接下来就是编写具体的测试用例了,一般测试用例的主要步骤为:

  1. 准备测试环境

  2. 执行测试步骤

  3. 测试结果断言

  4. 测试结果报告

  5. 清理测试环境

下面以 SDK 的无埋点元素点击事件自动化测试用例为例,说明自动化用例的编写。

测试用例:

启动 App,模拟用户滚动屏幕找到对话框按钮,然后点击对话框按钮,显示对话框后点击关闭按钮, 校验点击事件发送数据,发送内容正确。

代码实现:

- (void)setUp {
   // 一些初始化操作
}

-(void)tearDown{
   // 一些结束动作
}

-(void)testDialogBtnCheck{
    /**
     function:对话框按钮点击,检测点击事件,
     **/
    [[viewTester usingLabel:@"UI界面"] tap];
    //添加向下滚动操作
    [tester scrollViewWithAccessibilityLabel:@"CollectionView" byFractionOfSizeHorizontal:0.0f vertical:10.0f];
    [tester waitForTimeInterval:1];
    [[viewTester usingLabel:@"LabelAttribute"] tap];
    [[viewTester usingLabel:@"ShowAlert"] tap];
    [tester waitForTimeInterval:1];
    [[viewTester usingLabel:@"取消"] tap];
    [tester waitForTimeInterval:3];
    NSArray *clckEventArray = [MockEventQueue eventsFor:@"clck"];
    //是否发送clck事件 
    if(clckEventArray.count>=2)
    {
        //判断点击事件是否字段发送正确
        NSDictionary *chevent=[clckEventArray objectAtIndex:clckEventArray.count-1];
        NSDictionary *clkchr=[NoburPoMeaProCheck ClckEventCheck:chevent];
        //NSLog(@"Check Result:%@",clkchr);
        XCTAssertEqual(clkchr[@"KeysCheck"][@"chres"], @"Passed");
        NSLog(@"对话框按钮点击,检测clck事件测试通过---Passed!");
    }
    else
    {
        NSLog(@"对话框按钮点击,检测clck事件测试不通过:%@!",clckEventArray);
        XCTAssertEqual(1, 0);
    }
}

由于我们主要测试 SDK 的功能,测试 Demo 是我们自己设计的,主要覆盖各种 UI 元素和事件,其业务逻辑比大多数的业务类型 App 都简单,没有什么特别介绍的。

这里介绍下断言的设计。前文介绍过,我们自动化测试的重点是数据采集规则正确,不关注数据存储与发送。SDK 在采集数据时会将所有事件先加入一个队列,然后再保存到 DB,所以在执行测试时,只需要 监听 事件队列,即可在监听的事件队列中按照需要保存和获取需要断言的事件。点击事件发送的数据结构大致如下:
在这里插入图片描述
对事件数据的校验,首先保证字段完整且每个字段不为空,即数据的 Schema 正确;其次根据需要对事件的具体字段做校验,比如点击事件的类型 t 应该为 clck 。这些检查被封装到了单独的 Check 方法中,如果检查通过则方法返回 Passed。这里是通过 ClckEventCheck 方法完成了具体的业务校验。

执行测试用例

主要介绍下如何通过命令行执行测试。

安装 Command Line Tools(命令行工具包),App Store 安装 Xcode 默认不会安装 Command Line Tools,可以通过在命令行输入以下命令进行单独安装。

xcode-select --install

在使用命令行执行测试之前,还需要将项目设置成 Shared。打开 Product → Scheme → Manage schemes,查看项目是否是 Shared,如果不是,则选中后面的复选框将其共享。
在这里插入图片描述
命令行执行所有的测试用例

xcodebuild -workspace Growing.xcworkspace  \
-scheme GrowingIOTest test \
-sdk "iphonesimulator13.5" \
-destination platform='iOS Simulator',OS=13.5,name='iPhone 11'

执行单个用例

xcodebuild -workspace Growing.xcworkspace \
-scheme GrowingIOTest test \
-only-testing:GIOAutoTests/ClckEventsTest/test7DialogBtnCheck \
-sdk "iphonesimulator13.5" \
-destination platform='iOS Simulator',OS=13.5,name='iPhone 11' 

更多xcodebuild 的使用方法可以,参考其使用说明

man xcodebuild

美化测试报告

xcodebuild 的输出阅读起来不是太直观,使用 xcpretty 可以解决这个问题,并且它还能完成测试报告生成。

xcpretty 是一个高速灵活的 xcodebuild 输出格式化工具,其使用如下:

# 命令行安装 xcpretty
gem install xcpretty

命令行执行

xcodebuild -workspace Growing.xcworkspace \
-scheme GrowingIOTest test \
-sdk "iphonesimulator13.5" \
-destination platform='iOS Simulator',OS=13.5,name='iPhone 11' \
| xcpretty --report html

生成的测试报告如下

在这里插入图片描述
默认输出 html 报表在 build/reports/tests.html

5. 覆盖率统计

在执行自动化测试的时候,通常我们想获取测试覆盖率报告,以度量自动化测试的覆盖情况。因为 KIF 是直接基于 XCTest 实现的,说以可以很容易的使用 Xcode 自带的覆盖率统计工具。其设置如下:

Product → Scheme → Edit Scheme,Code Coverage 把需要统计覆盖率的被测程序加入到 Targets 中。

在这里插入图片描述
测试完成后可以拿到覆盖率统计报告。

6. 持续集成

自动化测试的最大价值在于可以替代人工进行更高效,更频繁的测试。因此要发挥自动化测试的价值,最理想的方案是,将自动化测试加入到持续集成环节中,每当有代码变更时,就自动的执行测试,快速反馈结果。

我们利用 Jenkins 监控代码仓库变更,当有新的 commit 提交时,Jenkins 会自动拉去最新的代码,并调用命令行执行相应的自动化测试用例,收集相应的测试报告,并将测试结果通过钉钉机器人及时的通知给相关的开发和测试人员。当测试失败时,相关人员可以第一时间收到结果,并及时解决。

7. 总结

本文以 iOS 平台为例系统的介绍了 GrowingIO 数据采集 SDK 主要工作原理,测试方案的设计以及自动化测试框架的选型与自动化测试实施。希望对从事 SDK 测试工作的同学有所启发。后面我们还会分享 GrowingIO 用户触达 SDK 的自动化测试,Android SDK 自动化测试等相关的内容,请大家持续关注我们。

参考资料
https://tech.meituan.com/2016/09/02/ios-uitest-kif.html
https://github.com/kif-framework/KIF - Connect to preview
https://github.com/xcpretty/xcpretty - Connect to preview

关于GrowingIO

GrowingIO 是基于用户行为数据的增长平台,国内领先的数据运营解决方案供应商。为产品、运营、市场、数据团队及管理者提供客户数据平台、获客分析、产品分析、智能运营等产品和咨询服务,帮助企业在数据化升级的路上,提升数据驱动能力,实现更好的增长。

如果对 GrowingIO 兴趣,欢迎点击「此处」了解更多!

逆向实战:用MonkeyDev+Logos给QQ音乐注入GrowingIO SDK并查看埋点日志 本文详细介绍了如何使用MonkeyDev和Logos工具对QQ音乐进行逆向工程,实现GrowingIO SDK的注入与埋点日志分析。从环境搭建、工程配置到SDK集成和日志验证,提供了一套完整的iOS逆向实战方案,帮助开发者掌握商业埋点SDK的集成技巧。 阅读详情

相关推荐

GrowingIO数据分析面试全流程复盘:从SQL到指标口径的实战经验

数据分析岗位的面试,核心考察的是候选人能否将业务问题转化为可执行的数据分析路径。这通常从理解用户行为数据的基本概念开始,比如埋点采集、留存率计算与指标口径统一。在技术层面,SQL窗口函数、漏斗分析以及A/B测试的显著性判断,都是支撑数据驱动决策的关键原理。这些能力不仅用于日常的报表产出,更能在异常指标排查、产品迭代评估等真实业务场景中发挥价值。当面试官反复追问“这个指标为什么这么定义”“这个数怎么算出来的”,本质上是在检验你是否具备完整的数据分析闭环思维。本文基于GrowingIO数据分析岗位的完整面试经历

weixin_33845881的博客 298

数据来源渠道及采集工具_GrowingIO「转化数据回传」| 平台对接免开发,优化投放更便捷...

GrowingIO「广告监测」为我们准确监测投放质量。通过「转化数据回传」功能,我们能够快速完成广告平台对接工作,让广告效果优化更为高效。 ...

weixin_39978350的博客 434

埋点测试全流程指南:从数据采集到质量保障的工程实践

在数据驱动的产品迭代中,数据采集是构建分析体系的基础。其核心原理在于通过客户端代码在用户交互的关键节点自动记录并上报行为数据,形成原始日志。这项技术的价值在于将模糊的用户行为转化为结构化、可量化的信息,为产品优化、算法训练和商业决策提供可靠依据。应用场景广泛覆盖用户行为分析、A/B测试、推荐系统效果评估及业务漏斗转化率监控等。要确保数据的准确性与可靠性,关键在于对数据采集点进行系统性质量验证,即埋点测试。本文聚焦于埋点测试这一关键环节,详细阐述了从测试准备、执行验证到数据落盘与持续监控的全流程工程实践,旨在

weixin_30791095的博客 408

数据埋点

1、埋点的原理 说简单点就是,用户进行的操作,能通过特定的标识符记录下来,这些标识符汇总可以得到一个数据池,根据这些数据池,就可以监控用户的大概操作。 比如首页的一个登录事件,开发设定标识符为login_success,类型为计数器(这个类型第三方平台设置),那么用户每次登录成功(触发的条件是登录成功还是登录都可以在第三方平台设置),login_success就会+1,通过数据汇总就能大致知道一段时间之内有多少用户进行了登录且成功。 2、数据埋点,对于产品迭代而言,有很重要的指向意义。 数据分析是产品获得需

仁化居之安 408

资深开发者实战总结:高频SDK选型、接入与避坑指南

在软件开发中,SDK(软件开发工具包)是提升开发效率、集成核心功能的关键组件,其本质是一套封装了特定能力(如推送、分享、存储、通信)的代码库与接口规范。理解SDK的工作原理,即通过标准化接口调用服务商提供的云端或本地能力,是高效集成的基础。其技术价值在于避免重复造轮子,让开发者能聚焦业务创新,同时依托服务商的规模与专业保障服务的稳定性与性能。在实际应用场景中,从移动端的用户互动、后端的云服务赋能,到运维监控与商业增长,SDK贯穿应用全生命周期。例如,在**推送服务**集成时,深入理解厂商通道机制与**权限引

aodiyi6351的博客 496

比较详细的测试用例---功能测试

自己写的测试用例。本系统分为三大模块:终端,数据分析处理中心,Web管理端。 终端监控负责数据的采集,初加工以及封堵。 数据分析处理中心负责审计、日志存储、趋势分析和处理控制终端命令。 Web管理端负责审计、封堵、日志存储策略配置,并且展示趋势分析和日志查询

跟我一起学开源设计第3节: 开源的服务端用户埋点SDK源码设计与实现分析

本文也是开源设计专题的第三篇文章,感兴趣的小伙伴,在阅读后,可以尝试基于该SDK进行下源码的深入理解和学习。同时,本文也分享了一种源码学习方法,即:带着问题/目标去学习,针对XX问题,进行跟踪和分析。通过最近3篇的文章,希望大家可以具备了:Spring Boot Starter的设计能力埋点类的SDK设计能力一种基于队列的高性能处理能力异步/批量思想的能力。

BASK2311的博客 1752

Growing IO SDK PHP版

Growing IO SDK PHP版 Growing IO SDK PHP版 Growing IO SDK PHP版 Growing IO SDK PHP版 Growing IO SDK PHP版 Growing IO SDK PHP版 Growing IO SDK PHP版

GrowingIO 如何做到不必埋点即可采集到齐全的用户行为点击流数据?

source: https://www.zhihu.com/question/38000812 孔淼 诸葛io(http://zhugeio.com) CEO 36 人赞同了该回答 首先直接回答题主的问题: 大多对于可交互式的应用程序,例如Android应用,iOS应用,网站,Window

BalterNotz的博客 6504

NUS-WIDE-10K数据集制作

NUS-WIDE是一个多标签数据集,数据集中一共包含26,9648个样本,可以分为81个类。最近在做跨模态检索项目,发现有很多论文里面都用到了NUS-WIDE-10K数据集,但是在网上也没有搜索到相关的数据集下载链接或者是数据集制作代码,所以自己动手写了一个NUS-WIDE-10K数据集的制作代码。 1.介绍 我在网上找到的最早关于NUS-WIDE-10K数据集描述的论文是:Cross-modal Retrieval with Correspondence Autoencoder。描述如下:作者选择了N

weixin_44012382的博客 4200

【项目实战】小智AI MCP协议在IoT设备控制中的深度应用解析

本文深度解析小智AI MCP协议在IoT设备控制中的应用实践。通过MCP协议作为AI与物联网设备的翻译桥梁,实现大语言模型与ESP32等硬件的无缝通信。文章详细介绍了环境搭建、工具注册、消息路由机制,并以语音控制RGB灯光系统为例展示完整开发流程,为AIoT开发者提供实用指南。

oauth7security的博客 824

GrowingIO埋点(前端)

growingio平台埋点

MoXinXueWEB的博客 1758

新建菜单Office被替换为腾讯文档 - 解决方案

右键新建菜单中的Office被替换为腾讯文档。原因是安装了腾讯文档软件,此软件安装时会自动将新建菜单中的Office替换为腾讯文档,下文介绍解决方案。

NSJim的博客 2929

GrowingIO iOS Autotracker 使用教程

GrowingIO iOS Autotracker 使用教程 1. 项目介绍 GrowingIO Autotracker 是一个用于 iOS 平台的自动用户行为事件采集 SDK。它能够自动采集基本的用户行为事件,如访问和行为数据,并支持代码埋点、无埋点、可视化圈选、热图等功能。该 SDK 旨在帮助开发者更高效地收集和分析用户行为数据,从而优化产品设计和提升用户体验。 2. 项目快速启动 2.1 安...

gitblog_00060的博客 1205

UE5摄像机抖动全攻略:从Perlin噪点到Sequence实战(附参数调优技巧)

本文深入解析UE5摄像机抖动技术,从Perlin噪点算法到CameraShakeBase蓝图应用,再到Sequence高级控制,提供全面的参数调优技巧。涵盖战斗、爆炸等场景的预设参数,帮助开发者实现专业级抖动效果,提升游戏沉浸感。

weixin_30300225的博客 96

本地 AI 自由!OpenClaw+Ollama 双系统部署教程(Windows/Linux),零成本离线跑大模型

本文详细介绍了如何在Windows和Linux双系统中部署OpenClaw AI助手,并通过Ollama对接本地大模型实现完全离线使用。教程包含环境准备、OpenClaw安装配置、Ollama本地模型部署、系统对接等完整流程,特别强调隐私安全和零Token消耗的优势。针对不同操作系统提供具体命令,并给出常见问题解决方案,即使是新手也能快速搭建专属本地AI助手。最终实现的方案无需联网、无使用成本,且能保障数据隐私安全。

2501_93651177的博客 7230

Android第三方SDK隐私数据采集:技术原理、代码实现与合规实践

在移动应用开发中,第三方SDK(软件开发工具包)是实现社交登录、支付、广告等核心功能的关键组件。其工作原理是通过预封装代码库为应用提供特定服务,但这也带来了数据采集的技术伦理与合规挑战。从技术价值看,合理的数据采集能优化用户体验、实现精准分析,但过度采集会侵犯用户隐私并违反GDPR、《个人信息保护法》等法规。在应用场景上,常见SDK会采集设备标识(如Android ID、OAID)、位置信息、应用使用行为等数据,用于广告归因、用户画像构建等功能。本文聚焦于Android平台,通过剖析OAID获取、位置追踪等

weixin_33690963的博客 496

ArcGIS:景观指数和景观单元关联生成景观指数遥感图像

优快云@_养乐多_本文将记录,使用由 Fragstats V4.2 软件计算的景观指数和瓦片 tif 数据生成景观指数图像的操作步骤。本教程的操作均在ArcGIS上进行,最后生成一个研究区内指定景观单元大小的景观指数图像。结果如下所示,

养乐多的博客 4931

无需埋点的移动数据分析平台GrowingIO V1.0

ZD至顶网CIO与应用频道 12月09日 北京消息:2013年我认识了当时还在LinkedIn担任商业分析总监的张溪梦Simon,不仅是因为他从医生改行做数据科学家这一点吸引我,更重要的是他用中国的历史来给我生动的讲述其中的数据分析原理。 2年之后,他回国开始了创业,那时我们见过一次面,他提到想要做一款全新的数据分析产品。这个想法也是基于数据分析产品需...

weixin_33910137的博客 331

MAC(m1)-VMWare Fusion安装CentOS7.9

MAC(m1)-VMWare Fusion安装CentOS7.9

兴趣是最好的老师 1767

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

数字产品分析系统怎么选:GrowingIO、神策、Amplitude、Mixpanel 与 PostHog 对比

对比 GrowingIO、神策、Amplitude、Mixpanel 与 PostHog 在数据接入、行为分析、实验、部署和运营协同上的技术路线,给出国内企业的产品分析平台选择建议。

shujudang的博客 355

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

A/B测试实验平台有哪些?国内外10款工具全景盘点

A/B 测试平台选型的本质是“场景匹配”,而非“堆砌”。先明确业务场景,覆盖 App、Web、后端、小程序与大模型,再评估团队能力与预算,最后横向对比平台。正如文章开篇提到的 Gmail 案例,A/B 测试已被验证是数据驱动增长的核心方法,选对工具是搭建实验体系的第一步。

效率工作研究中心 185

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

浅谈数据埋点。

浅谈数据埋点|0x00 如何理解埋点埋点是数据采集的专用术语,在数据驱动型业务中,如营销策略、产品迭代、业务分析、用户画像等,都依赖于数据提供决策支持,希望通过数据来捕捉特定的用户行为,如...

SeizeeveryDay的博客 303

简单又实用的移动数据分析工具,为大家推荐十款

整理十款接入简单又实用的移动数据分析工具,帮助产品、开发、运营、营销,实现业务和用户洞察,以数据驱动成长,快速迭代。   1.友盟 第三方全域大数据服务提供商 友盟成立于2010年4月,2016年1月友盟、cnzz及缔元信在合并成立新公司“友盟+”。为中国移动提供免费的统计分析服务及工具,已服务于100万移动应用,500万网站。 2.TalkingData 移动大数据服务平台 TalkingDat...

多智时代的博客 1926
上一篇: GrowingIO 张溪梦:数据智能——业务增长新引擎
下一篇: 保险行业如何构建标签和画像体系,助力线上业务增长?
GrowingIO_
博客等级 码龄8年 56粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值