探秘百度移动应用质量管理与数据分析
发布时间:2022-12-16 11:40:39 所属栏目:大数据 来源:
导读: 移动互联网时代,吃喝玩乐、办公支付等等各种应用都在抢占移动 APP 市场,在流量为王的今天,移动 APP 虽然竞争激烈前景一片大好,但也有让开发者和运营人员十分头疼的事情,那就是缺乏贯穿完整移动生命周期测试
|
移动互联网时代,吃喝玩乐、办公支付等等各种应用都在抢占移动 APP 市场,在流量为王的今天,移动 APP 虽然竞争激烈前景一片大好,但也有让开发者和运营人员十分头疼的事情,那就是缺乏贯穿完整移动生命周期测试的解决方案和运营策略指导。如何快速处理移动应用的碎片化测试、利用大数据分析指导移动运营策略是长盛不衰的话题。 76 期百度技术沙龙,聚焦移动应用“产品质量“与”数据价值“,来自百度的技术专家从功能测试、兼容测试、安全测试等方面出发,为大家分享完整移动生命周期测试解决方案,以及如何通过多样化的数据分析、洞察用户行为来指导制定 APP 运营策略。 百度 MTC 移动云测试中心 人力成本逐年高升、测试团队人力不足、测试体系搭建成本高、测试设备适配困难……这些都是当今移动测试普遍面临的困境和挑战,百度 MTC 移动云测试中心,是业界领先的移动应用一站式测试服务平台,覆盖移动 APP 开发完整生命周期的各种测试解决方案,百度 MTC 高级产品经理张晓晓,现场分享了百度 MTC 如何助力 APP 质量提升。 移动应用测试种类比较碎片化,不过总体上可以分为两类: 初探"大数据"技术的海关应用_第二届大数据技术与产业应用大会_百度大数据应用 以开发者比较关心的兼容测试为例,百度的测试专员在拿到测试包后,首先会编写用例和脚本,然后将测试包发送到真实的上千台手机上进行安装、启动、运行和卸载操作,利用自动化工具,将在运行过程中遇到的崩溃、闪退、UI 适配等兼容问题进行记录分析,最终反馈到测试报告中。整个测试流程下来,用户只需将测试需求和测试包提供给百度,其他的测试流程和测试报告则由百度一手提供。 百度大数据应用_第二届大数据技术与产业应用大会_初探"大数据"技术的海关应用 人工测试方面,除了基础的辅助设备和测试环境,比较考究的就是测试工程师的经验和能力,百度众测社区建立了比较完善的测试专员培训体系,通过众测学院能力培养、MTC 技术支持、精准人员协同分工以及持续质量监控四个维度,保证人工测试的精准性与准确率。下图为百度 MTC 人工测试的整体工作流程,除了常规的测试用例设计和执行之外,百度也设置了三重审核机制,通过内部与外部的连通审核,将测试结果进行进一步的保证。 百度大数据应用_第二届大数据技术与产业应用大会_初探"大数据"技术的海关应用 据张晓晓介绍,除了传统的 APP 测试,从 2016 年下半年开始,百度也一直在尝试支持硬件方面的测试,如目前比较火爆的智能单车、甚至需要场测的智能楼宇和智能家居测试,百度都有比较好的支持和案例。同时,百度也希望和整个测试社区强强联手,打造更加智能、全面的测试解决方案。 百度 MTC 私有云解决方案 某些移动测试对数据保密性要求较高,尤其是对于一些还未上线的新功能 APP,信息私有化、定制服务是某些企业在做第三方测试的第一需求,为此,百度 MTC 制定了企业版的私有云解决方案,通过独创的本地化移动 APP 测试,为企业迅速搭建一个内网真机自动化测试实验室,实现测试数据私有,设备远程管理等功能,助力企业互联网转型。百度首席移动云测试解决方案专家李明,为现场的观众全面讲解了百度 MTC 企业版私有云解决方案。 2012 年百度世界大会上,百度正式发布 MTC 移动云测试产品,构建了以 UI 自动化测试为主的测试解决方案,随着技术的推进与发展,百度逐渐集成了性能测试、安全测试、兼容性测试等多个维度的自动化测试,并开始对企业市场提供私有自动化测试服务,2016 年,百度 MTC 私有方案 1.0 正式推出,引起业界极大的关注。为了辅助测试效率,百度 MTC 今年私有方案 2.0,在 1.0 的版本上,丰富了更多的测试工具,包括程真机调试、脚本录制回放以及一些第三方的工具接口,建立起更专业的自动化测试工具集。下图为 MTC 私有云方案 2.0 版本的系统架构图,标红的地方为新增功能和接口。 初探"大数据"技术的海关应用_第二届大数据技术与产业应用大会_百度大数据应用 整个 MTC2.0 的版本,在自动化测试方面提供了七大块的测试解决能力,包括脚本功能测试、兼容测试、安全测试、性能测试、网络测试、遍历测试、脚本录制。每一项的测试功能对应的作用和测试不尽相同,但都不可或缺。 APP 自动化测试私有部署方案实践 演讲最后,李明以百度 MTC 为某一权威的科研与试验检测机构部署的自动化方案为例,讲解了百度 MTC 如何实现企业私有化的方案部署。 【客户痛点】 承担大量的科研及测试任务,公司各类型的移动应用建设存在开发周期短、版本迭代更新快、迭代更新后缺少回归测试和业务场景模拟测试,随着移动设备及其操作系统不断升级发展,现有的移动应用暴露出功能不完善、性能稳定性不足、智能设备兼容性不强、安全漏洞防护不够等问题。 【解决方案】 百度 MTC 基于私有云的移动 APP 测试解决方案,采用中央机房 + 地方机房的分布式部署方式,将项目,用户,应用,脚本设备集中调度管理、资源共享、安全保密。同时,百度 MTC 提供了一整套服务于全集团移动 APP 测试需求的测试标准,包括功能测试,兼容测试,性能测试,遍历测试、安全测试,弱网测试,极限测试,远程真机调试等,以便于统一和规范测试流程和质量。 “一框多用”Android 通用脚本测试解决方案 Android 常用的脚本测试框架主要有 UiAutomator、Robotium、Appium 等,但是都各有各的弊端,混合脚本测试基于封装后的 UiAutomator,结合图像识别和 OCR 技术,可以全面支持各类应用场景。百度高级测试开发工程师洪至远,围绕常见的脚本测试、等主题内容分享了“一框多用”Android 通用脚本测试解决方案。 如何选择支持各类场景的测试脚本 一个常规的自动化测试流程里,工作人员需要首先编写脚本然后在本地测试,测试完成后再上传到自动化测试平台收集结果。在本地测试之前,测试人员需要选择一个合适的测试框架编写脚本,目前,业界主要的框架包含 appium、Robotium、UIAutomator 三种,但这些框架各有优劣,下图为常用框架的优劣对比,我们可以很清晰的看到这三大框架的性能及适用场景。 初探"大数据"技术的海关应用_第二届大数据技术与产业应用大会_百度大数据应用 首先,Robotium 框架可以进行黑盒测试, 并且对控件识别做得比较好, 有一套插装机制,可以实现其他的自动化测试。不过,它的缺点也非常明显,原生上不支持跨进程,需要对 APP 进行重签名,这会导致部分测试无法运行,这是比较致命的。 第二个 Appium,它支持跨平台, 包括安卓和 iOS ,而且支持的安卓版本十分全面,高版本、低版本都有各种方法解决。但也有一个致命缺点,稳定性不足,稳定性对于测试环境的重要性不言而喻,因此,这个框架也并不完全适合。 最后是 UIAutomator,是谷歌开发的框架, 本身也有很多优点。首先它是原生的,有一个很优越的特质就是支持跨进程界面的获取。不过 UIAutomator 本身不支持安卓 4.1 以下系统,对非原生界面支持较差。 经过比较,百度选择了对原生界面支持较好的 UIAutomator 框架,同时,为了保证性能的运行,百度在此框架基础上做了系列优化实践。 优化实践一:脚本执行易受干扰 在选择完成测试脚本后,测试流程中还是会碰到比较多的问题,这里面最常见的就是权限的弹窗干扰,程序在运行过程中突然出现一个干扰然后脚本就挂掉了,这种问题十分常见也让测试人员十分头疼。 第二届大数据技术与产业应用大会_初探"大数据"技术的海关应用_百度大数据应用 弹窗干扰主要分为两种,进程内的弹窗和进程外的弹窗。针对进程内弹窗百度的解决方案是在 UIAutomator 基础上做一套封装,检测是否有弹窗逻辑,然后通过脚本逻辑进行清理;进程外的弹窗则需要通过夹杂方案,比如 UIAutomator 支持跨进程操作,这样进程外的操作可以直接通过 UIAutomator 给识别,并且给点击掉。 优化实践二:非 Native 场景脚本支持较差 一般的非原生场景包括 WebView、游戏、PopupWindow 等,这些场景很大的一个特点是界面元素识别较难,比如像 PopupWindow 这样的安全键盘,它在页面基础上加了一层 Window,识别过程的焦点安全键盘上,导致安全键盘元素完全无法获取、识别。 (编辑:草根网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


浙公网安备 33038102330472号