什么是 埋点测试?
一、测试流程
每一个app的完成,都少不了各方人员的共同努力,各司其职。如:产品经理符合提供需求以及确认app最后展示效果,研发人员负责编码开发app,测试人员负责测试app是否满足需求。为了更好的解释,我画了一个流程图:
二、测试技巧
了解开发针对不同模块分别用什么语言编写。若使用RN语言,则只需要测试一端即可。
现在普遍app开发是使用原生编程语言Android端使用Java。而RN是开源的跨平台移动应用开发框架,完整封装了各种js内置的方法,则rn编码时是调用js处理逻辑层处理事件,而js会被转译成object-c和java。其实简单来说,我们在最上层编码开发app就能在Android和ios端使用。因为同一套代码,针对埋点测试只需要测试一端即可,这样就提高效率。不过因为RN组件不全,某些特殊功能就无法解决,则还是需要各自的原生语言去编码。关于rn使用的一个大致图提供参考:
三、测试方法
其实我们有一个数据采集系统能统计埋点数据,数据经过分析汇总的,展示非常直观。但是,平台并不能区分是Android端或者ios端的触发,并且数据往往不是时时更新的,所以对于测试工作来说,无法保证埋点是否完成,数据不具有考核性。所以目前大部分公司是通过手机端连接电脑,通过查看日志方式去定位埋点情况。下面我们就Android端和ios端的测试方式讲述下:
埋点的目的:实现app的数据收集和分析。
而数据收集和分析的意义是什么呢?
不同的人对于埋点有不同的目标。
比如对于版本的某个功能,产品可能只是想埋点以了解:
1、新功能是否得到用户的认可和使用?
2、用户使用的场景和路径是怎样的?顺畅吗?
3、是否需要针对反馈回来的数据,进行分析改进功能?
四、而对于某个广告和运营活动的投放,关注的可能是:
广告的展示率、用户的点击率、转化率、甚至是商业盈利等
总而言之,埋点本身其实是对于自己所设计的产品的有一个可视化健康检查,通过逻辑和数据,贯穿产品的整个生命周期,使产品逐步达到最佳状态从而实现硅谷最近所谓的“Growth Hacker”的效果。
另外,一般的app都会有一些核心指标和一般性指标,核心指标诸如下载量、用户数、活跃用户数、留存等等,一般性指标比如用户访问频率、停留时长、页面数等。
于是就衍生出了各种各样的埋点工具。市面上常见的埋点工具,谷歌的Google Analytics,国内比较普遍的第三方统计工具是友盟和talking data,现在小米和百度也有开放的统计sdk。
埋点的逻辑是:界面——事件——事件参数
每一个界面的每个事件都有唯一的标示ID
此外,每个界面中都会有公共参数统计,比如:userId、timestamp、taskId等
讲了这么多,那么埋点是怎么测试的呢?
通用的一种方式是直接第三方统计平台去定时查看自己的appid对应的数据。之前有测过Google和友盟的统计。
优点是,第三方平台的数据往往是经过分析汇总的,展示非常直观。但缺点,是这些平台数据往往不是时时更新的。
再加上第三方统计平台自己的稳定性也有待考量。所以没办法及时确认数据的准确性。
于是另一种方式是从客户端下手,查看开发的埋点日志。
工具:Android平台用androidsdk,iOS平台用xcode
五、Android平台
1.环境和资料准备
1、搭建ddms环境,可以使用androidstudio,或者直接使用android sdk里带的monitor
2、想尽一切办法拿到埋点字段表,这是开发埋点的依据,以及产品分析的标准
3、取已埋点的安装包并且输出app埋点的日志
2.测试步骤:
1、在Android手机端安装带有埋点的安装包
2、在电脑端打开Android studio,同时通过usb连接手机
3、查看埋点字段表,执行对应有埋点的操作,比如:若app登录处埋点。则若在app上点击登录button,正常情况下能通过查找日志找到对应的埋点。
4、检查埋点是否正确,出错的情况有:
a.漏埋点。比如,若执行a步骤找到埋点a;执行b步骤,却找不到埋点b。大概率是埋点b没有被埋。
b.多埋点。比如,若只是操作一次,却找到多个埋点。
c.埋点和操作类型不对应,比如,点击的是“确认”,却上报了“返回”
测试方法
1、调起monitor之后,连接移动设备
2、设置logcat的filter,填写包名即可
3、查看埋点字段表,执行对应有埋点的操作
比如
进入手机上的app,点击 下一步
4、查看ddms的logcat,即可看到操作的日志,如图所示:
5、检查埋点是否正确,出现错误的情况一般是:
a.漏埋点
b.埋点和操作类型不对应,比如点击的是“下一步”,却上报了“返回”
c.埋点和操作频率不对应,比如只操作了一次,却上报了两次
iOS平台
环境和资料准备
1、安装xcode,从appstore直接下载即可
2、找产品/开发拿到埋点字段表
3、找开发要已经埋点的安装包
测试方法
1、在Android手机端安装带有埋点的安装包
2、在电脑端打开xcode,同时通过usb连接手机
3、点击xcode的window —>devices(调起xcode之后,连接移动设备--选择Debug-Devices)
4、查看埋点字段表,执行对应有埋点的操作
5、检查埋点准确性
总结:
尽管埋点测试在整个测试流程中操作相对简单,耗时较少,但是仍然是软件测试中不可或缺的一部分,保证埋点正常运作。通过埋点汇总后反馈的报表,可以科学有效的规划出一款APP的未来走向,更满足用户体验需求。