降低APP卸载率,测试人员可以做些什么?

作者:闲鱼技术——虫零

一、用户为什么会卸载APP

《增长黑客》中提出一个公式:_“转化 = 欲望 - 摩擦”,_所有让用户感觉不舒服的地方,都会带来一定的“摩擦”,如果摩擦大于用户的使用欲望,用户就会离开。根据各大应用商店的研究表明,安装应用后的30天内,大部分用户会卸载APP,平均只有不到30%的用户留存下来,导致用户离开的top10原因为:

•APP功能对自己没用,不能满足期望•太多的烦人推送 & 侵入式广告•经常Crash、卡顿或卡死•包体积太大•申请太多的授权•耗流量、耗电、耗内存•加载时间太长,对网速过度依赖•有更好用的竞对APP•隐私问题•易上瘾、套路多

以上可归纳出,“隐私安全”、“实用性”、“性能”、“体验”是用户遇到的四个主要摩擦,因此测试团队要做的事情就是:如何从质量的视角来降低这四个方面的摩擦。​

二、建立改善模型

要消除摩擦,首先需要建立一个可以指导我们改进的模型,APP在用户手机中能否存活,取决用户主观感受,也就是我们常说的“用户体验”,下图借鉴了马斯洛人类需求层次结构,抽象出来APP的体验层次金字塔模型:<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/5bab0659aaff41f2a4edaae7d27755aa~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image “null”)从图中可以看出,从塔底到塔顶,分为五个层次:安全性、功能性、稳定性、易用性、愉悦性,每个层次都在前面的基础之上提出了更高的期待,随着层次的升高,APP的用户粘性逐步增强,就像人类的生存条件一样,APP能否在用户的手机上存活,取决于满足了低层次功能需求之上高层次精神需求,下图模拟了用户内心的OS:外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传测试人员可以依据这个模型,来做质量上的改进,下面介绍下闲鱼的一些实践:*” style=“margin: auto” />

三、具体改善措施

3.1 隐私安全是底座

不安全的APP很容易被用户卸载,原因是:会让人产生焦虑感甚至恐慌,尤其是涉及个人隐私方面的。举个实际案例,为了抗击疫情,英国推出了“新冠追踪APP”,下载量超过2600万次,但是已经超过30%的民众卸载了该APP,另外还有30%的用户打算在未来一周内卸载它,原因是这款APP的侵犯了个人的隐私安全。 规避安全问题其实非常简单,但是很多APP却做不到,原因是需要关注的点实在太多,在发版频次比较高的情况下,经常会疏忽隐私安全问题。最好的方式是由测试团队发起,在整个产研过程中推行“清单革命”,根据工信部颁布的《APP隐私政策》和各大《应用商店安全规定》,整理一系列“核查清单”,在研发的各个阶段对照清单进行核查,这样就会将安全风险控制在可控范围内。<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/11427c975a55488b8410d0e3a4331126~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image “null”” style=“margin: auto” />

3.2 跳出功能测试“陷阱”

随着产研团队规模的不断壮大,自然就形成了“筒仓效应”,每个产品模块从“产品-研发-测试-运营”都是固定的一个小分队,大家都只关注局部模块优化迭代,进行功能验证时,也以某个局部功能可不可用作为质量标准,忽略了用户真实使用场景,常常听到用户反馈:

•为什么打开APP后有这么多弹框?•这个优惠券领完后怎么用?•我的订单在哪里可以看到?

造成这种状况的原因是:产品模块之间的衔接不流畅,不是每个用户都像测试一样熟悉APP功能,所以在做功能测试时,要小心“用户已经足够了解我们”的陷阱,应该把用户想象成初次使用APP,可以引入“探索性测试”、“新用户视角测试”、“Bug Bash”来作为功能测试补充。

1.探索性测试

和传统的测试不同,探索性测试方法相对非结构化,给了测试人员很多的自由,无需编写测试用例,无需限定测试范围,测试人员可以自由地以他们认为合适的方式和时间进行测试。

1.新用户视角测试

每个版本会有数十项优化和更新,老用户很容易接受这些优化,却忽略了对新用户是否友好,新用户的容忍度低于老用户,如果我们让新用户使用这些新功能时“困难重重”,被卸载可能性会很大,一个用户一旦离开,再拉回来的可能性就非常低了。闲鱼在每次发版之前,都会以新用户视角去体验一下新功能。

1.Bug Bash

Bug Bash是短时间内发现质量问题最有效的手段之一,组织团队的产品、开发、测试、UED、运营,甚至是客服、市场人员,放下他们手中的日常工作,一起来用他们能够想到的各种方式“训练”APP。Bug Bash的频次可以自由控制,闲鱼每个月都会组织一次“全民体验官”的活动。

3.3 重视全链路性能

APP是承载我们服务的载体,随着越来越多的功能被塞进APP ,性能也会随之劣化,导致APP性能变差主要有三方面的因素:

•设备性能•网络性能•服务端接口性能

<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/41e7346acb0d46219ebee06a914c71eb~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image “null”)APP性能差,用户最直观的感受就是“慢”,每当遇到页面加载缓慢时都会异常烦躁,要解决这个问题,测试可以制定影响性能的指标,针对每项指标定一个基线值,然后推动研发去优化,常见的指标如下表所示:外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传我们相信,经过一段时间的专项治理,性能肯定能够回到理想水位,但是如何守住已有成果,比较好的方法是:版本间做数据比对,当有劣化趋势时,及时推动研发排查优化。闲鱼APP在每个版本都会做一轮全面的性能测试,测试报告会列出最近五个版本的性能数据对比,下图是低端机上的一些性能数据:外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传影响性能的原因是多方面的,每次的结果会有一些波动,除了版本间比对外,还需要设置合理波动范围,用来减少不必要的排查成本,下面的例子是闲鱼制定的部分波动指标” style=“margin: auto” />

•Android

冷启动时长 恶化 <= 300ms 搜索加载时长 恶化 <= 200ms 相册加载时长 恶化<=200ms 详情页加载时长 恶化<=100ms

•iOS

冷启动时长 恶化 <= 300ms 搜索加载时长 恶化 <= 150ms 相册加载时长 恶化<=100ms 详情页加载时长 恶化<=100ms​

3.4 引入可用性测试

通常情况下,产品经理和UED会在APP交付前,做一次还原度验收来保障产品的体验,不过项目实际运转过程中,效果并不理想。因此可以通过可用性测试,作为这一环的补充。可用性测试没有固定的用例,主要是从普通用户视角去体验APP,测试过程中把自己觉得有“摩擦”的点抛出来,比如:

•为什么这个入口如此隐蔽?•为什么不能左滑回到原来的界面?•为什么点开页面直接播放声音?

衡量可用性可以从下图展示的四个方面入手,每个功能都套一下这个句式:某某功能是${xxx}的吗?相信很快就能找到让人不满意的地方。可用性测试可以让我们更有用户同理心,回到最<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/406ca1c99b194635861d08defb166bdc~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image “null”” style=“margin: auto” />

四、总结与展望

过去一年,闲鱼在APP体验方面投入了大量的精力,在用户留存方面取得了一些短期成绩,留存趋势如下图所示:<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/3e9a318c2286400684047f18998c48fa~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image “null”)” style=“margin: auto” />

让用户感受到产品的诚意,是质量团队的第一目标,测试作为整个研发环节的最后交棒人,需要在每个细节上下功夫。未来闲鱼测试团队会继续基于APP体验模型,持续投入APP体验方面的测试,同时在智能化适配、精准测试等方面做一些突破,期望为用户留存做更多的贡献。​

团队会继续基于APP体验模型,持续投入APP体验方面的测试,同时在智能化适配、精准测试等方面做一些突破,期望为用户留存做更多的贡献。​

​接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资料分享

当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值