《腾讯iOS测试实践》一一1.7 未来的测试

1.7 未来的测试

这一节内容都是笔者畅想的,如有雷同,纯属意外。
移动互联网时代,特别是Native的App,版本更新的成本很高(除时间成本,还有对用户体验的影响),所以大多数App都会经过充分的测试再发布版本。
随着热补丁(hotfix)技术的演进以及H5的流行,可以不需要发布新版本而发布一个补丁就可以发布新功能或者修复问题(而且用户基本无感知,不需要安装过程,下次启动就自动更新了),这样就可以在没有充分测试的情况下,快速通过用户来验证。这样对测试的依赖可能会越来越小。那么未来的产品都是通过用户(灰度或者正式上线)直接验证吗?
应该不可能全部都通过用户来验证(灰度或者正式上线),不经过测试而直接上线,可能出现问题的概率会增大,如果真的出现问题,那么会对产品的口碑带来很大的影响。但是热补丁技术确实是可以快速修复问题的方案,以后会被逐步应用。即使利用热补丁技术,还是需要度量产品品质的,例如线上用户各类性能指标以及用户反馈等,对于品质的追求还是始终存在的,也就是仍需要有人来做品质这样的工作。
1.7.1 线上数据挖掘
既然线上数据会越来越重要,那么就需要一整套埋点上报体系(终端是SDK形式,服务端存储各类数据),同时对上报数据进行数据分析,可能需要利用到机器学习等技术分析数据,判断是否有潜在问题。数据上报体系是每个App都有的基本功能,包含需要关注具体上报什么信息,例如,
(1)路径埋点:关键路径的埋点。
(2)错误码信息:统一错误码设计,方便排查。
(3)调用堆栈:堆栈调用信息。
(4)方法跟踪:函数方法的链条。
(5)用户动作:用户操作路径(可以详细到用户何时点击哪个控件)。
(6)机型网络信息:基础手机信息收集。
(7)性能指标(内存/CPU/FPS):各类性能指标的消息速度/流量/函数调用时间。
在对App全方位埋点后,就会有上报的数据,哪些数据需要进行分析,具体分析方法各种各样,如图1-16所示。该图主要描述了一种线上数据分析模型,包括数据收集容器、数据分析容器、Bug处理容器三个部分。

图1-16 线上数据分析模型
如果埋点上报体系建设完善,任何人(Dogfood、Showcase、众测、灰度等)只要体验产品,就是给产品做测试,这样就会上报很多数据,再系统分析这些数据,进而找到某些潜在问题。
1.7.2 人工智能
最近,Facebook发布聊天机器人Chatbot,Google发布Google Assistant以及Google Home音箱,Amazon也发布Echo音箱,整个业界的发展趋势变成从App演进到Bot。同时,Google的战略也从Mobile First转变为AI First。那么对于人工智能(Bot),应该怎么测试呢?
业界暂时还没有开源或者公开的测试方案,可能各公司也都在探索中,传统上针对AI的算法测试也是持续演进的。我们先回到人工智能本身,其实就是对数据的智能处理(这也是拥有大数据的Google等公司的人工智能快速发展的原因之一),那么人工智能测试还是得围绕数据进行测试。当然,这样的数据是海量的,因此要采用抽样模型进行评测。总的来说,就是构建以及收集数据样本。数据样本的构建,需要对具体处理数据结构足够了解,然后通过自动化方式生成样本数据。同时,除了构建样本数据,还可以通过另外的渠道来收集用户数据,例如众测或者众包的方式收集样本数据。
除了对数据的测试外,在人工智能出现后,人机交互方式会出现大的变化,语音交互可能是主要交互模式之一,那么如何保证优秀的用户体验呢?交互评测需要真实用户的参与,首先设计合理的评测问卷,然后通过众测或者众包等平台引入不同用户的参与,通过双盲测试收集各类数据。同时也会通过AB Test来收集线上用户的反馈,不断改善用户体验。
总的来说,人工智能测试除了对AI算法的测试外,还需要关注数据类测试+交互类测试。
1.7.3 众测
上面提到的线上数据挖掘(需要各种机型、网络、数据环境等)以及人工智能(数据样本采集)都需要有一定量的真实用户参与,才能更好地评测产品品质。那么可能就需要用共享经济的方式,快速集合一群合适用户来帮忙做评测(收集数据或者产品体验等),这就是最近几年业界流行的众测(众包)模式。众测(众包)模式的优点如下。
(1)闭环时间短,沟通效率高:因为有报酬等激励,众测(众包)用户积极度更高。
(2)定向用户属性支持:众测(众包)平台会收集用户属性,例如性别、年龄、职务、学历等,更有针对性地向合适人群做评测。
(3)定向设备属性支持:众测(众包)平台会收集设备属性,例如机型、ROM、网络、地域等,更有针对性地向合适人群做评测,特别是对于地域有特殊要求的,可以快速响应。
(4)用户行为高度可控、可刷机、可支付。众测(众包)平台的用户都是相对狂热的粉丝,可以帮助做一些特殊操作,例如重复刷机、重复尝试某个问题。
众测(众包)的具体使用模式大概有以下几类。
(1)需求评测(评估需求的适用范围等)。
(2)机型覆盖测试(覆盖各类机型适配情况)。
(3)重要问题复现(某些问题的复现)。
(4)大量数据收集(数据标准类)。
(5)问卷调查收集(用户调研)。
(6)复杂环境评测(某些功能的评测)。
众测(众包)使用可能是一个趋势,有能力的公司可以逐步建设这样的平台,这样能更快地验证产品,产品验证的成本会更低。
腾讯公司建设了一个众测的平台(http://tesly.qq.com),有需要的读者可以去看看。

时间: 2024-09-20 01:00:59

《腾讯iOS测试实践》一一1.7 未来的测试的相关文章

Booking.com的A/B测试实践

我们希望通过客户的观点来驱动我们的产品开发,而经过实验证明的各种假设则是探索客户观点的最佳手段.目前,在阿姆斯特丹举办的OSCON大会上,来自于booking.com的首席设计师Stuart Frisby为与会者讲述了他们如何在产品开发中大量应用A/B测试实践的情况. A/B测试是一种通过比较某个指定特性不同版本的差异,以理解哪一个版本的效果更好的一种行为.但要正确地实践A/B测试,需要满足一些前提条件. 每个特性都需要进行完整的测试,但这种测试必须是原子性的.如果你不能做到每次测试只针对一项变

《腾讯iOS测试实践》一一导读

Foreword 前 言 为何编写本书 随着移动互联网的兴起,移动终端的测试也进入火热的时代.两大主流操作系统Android和iOS占据了移动端的主要市场份额,其中iOS系统只能在苹果系列的移动终端使用,也就是说,在苹果系列的移动终端产品上,操作系统都是清一色的iOS系统,这就形成了硬件和系统同属于一家公司的独特现象.每年苹果公司发布新机型或者新操作系统时,都会引起全球果粉的疯狂.如此火热的平台,如何保证其App的质量就显得尤为重要. 长久以来,市面上单独讲解iOS平台测试相关知识的书籍比较少见

《腾讯iOS测试实践》一一1.2 工程效率

1.2 工程效率 总体来说,工程效率就是研发效率(包含测试效率).这里我们会把测试效率单独提出来进行说明,因为这是与测试工程师相关度最大的工作.研发效率,其实就是让产品上线的时间更快(在品质有保障的前提下),大多数时候是说与研发流程相关的(不局限于敏捷流程,Feature Team研发模型),例如包含但不局限于以下活动.需求评审:需求评审机制以及更新通知,避免需求有改动而没有及时同步到相关角色.代码质量:静态代码扫描,千行代码缺陷率等.架构评审:代码架构的讨论以及评审.Bug流程:Bug生命周期

《腾讯iOS测试实践》一一第3章 iOS兼容性测试 3.1 引言

第3章 iOS兼容性测试 3.1 引言 苹果公司每年都有两个引人注意的大动作:一是发布新系统,二是发布新机型.无论是发布新系统还是发布新机型,都会让iPhone平台上的研发团队忙于兼容适配的工作.作为iPhone平台上的测试人员,对苹果公司每年放的大招都要有招架之术.很多不了解情况的人会认为苹果公司的机型比较少.系统发布也不频繁,应该不会有太多涉及适配的问题,而实际情况并非如此.每发布一个系统和机型,都会伴随大量的技术实现或者硬件变革,用户在感受机型与系统更新带来全新体验的同时,背后需要开发人员

《腾讯iOS测试实践》一一1.5 测试设计

1.5 测试设计 测试设计是一个系统性工程,涉及内容比较多,从前期需求分析到用例设计,再到各类数据的分析等.下面我们择取主流的理论来看一下. 1.5.1 探索式测试探索式测试是目前业界比较流行的一种测试风格,是由测试专家Cem Kaner博士于1983年提出的,后来经过James Bach.James Whittaker等人的发展流行起来.国内大多数人是因为James Whittaker撰写了<Exploratory Software Testing>(探索式软件测试)一书才了解探索式测试,并

《腾讯iOS测试实践》一一1.3 品质管理

1.3 品质管理 品质管理分为两大类,即研发品质和线上品质.研发品质:包括品质体系(性能指标+用户评测).测试过程数据(Bug.通过率).线上品质:包括线上数据.用户反馈.漏测率.品质体系,除产品本身的特性功能外,还包含流畅度.内存.耗电量.启动速度.弱网络等功能,是用户体验能感知或者影响用户口碑的.同时需要思考各个指标的比重(主要考虑对用户的影响程度),这样可以更好地优化核心指标.线上品质,研发品质的指标都可以通过预设在被测App里的埋点上报上来,这样就有了线上数据.用户反馈主要是通过各反馈渠

《腾讯iOS测试实践》一一第1章 测试观概述 1.1 引言

第1章 测试观概述 1.1 引言 在正式介绍iOS测试前,先为读者引入一个思考问题:一千个人有一千种测试观,那么测试人员到底应该持有何种测试观?我们先来看看测试的定义发展史.20世纪60年代:软件开发过程中,将测试等同于"调试".1957年,软件测试区别于调试,成为一种发现软件缺陷的活动.1972年,在北卡罗来纳大学举行了首届软件测试正式会议.1975年,John Good Enough和Susan Gerhart在IEEE上发表了文章<测试数据选择的原理>,从此软件测试被

《腾讯iOS测试实践》一一1.8 小结

1.8 小结 通过本章的内容,先和读者建立了一个测试基础共识,便于接下来的章节理解.总体来说,我们认为测试=工程效率+品质管理,如何提升工程效率和品质管理是测试提升的核心内容.在测试的不同阶段,测试分析.测试设计.数据反推都能发挥一定的作用,未来的空间很大,需要我们一起去探索.

腾讯iOS预审团队分享:被苹果拒绝100多次,一半原因是“IAP异常”

iOS审核一直是每款移动产品上架苹果商店时都要面对的,但审核过程并不是一帆风风顺的,会因为很多种原因被苹果拒绝.据腾讯内部数据,2014年腾讯iOS审核被苹果拒绝超100次,理由也有很多种类,其中50%以上的情况都是因为"IAP异常".腾讯预审团队从以下两方面做了探索,经过近一年的推行和数据监控,iOS审核月通过率从过往的35%提升到85%+: 1.分析过往提审被拒的案例,并结合<苹果应用商店审核指南>的条款,整理成可执行的审查条目; 2.抽离出可以自动化的方法,提升审核的