终端自动化测试探索之路_第1页
终端自动化测试探索之路_第2页
终端自动化测试探索之路_第3页
终端自动化测试探索之路_第4页
终端自动化测试探索之路_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、魅族终端自动化测试探索之路技术创新 变革未来摘要 MEIZU Android自动化测试系统通过对测试框架的反思扩展和对测试流程的提炼优化,用平台打破了固件、设备(手机测试仪器)、测试脚本、测试报告 等各项资源间的隔离,构建了一个完整、易扩展、可配置的自动化测试体系。 在方便自动化测试的同时,也为其他非测试人员提供了一个了解项目质量概况的捷径,为自动化测试在整个部门的普及与规范节约了大量的成本。魅族终端自动化测试案例特点 一套完整的自动化测试系统,MEIZU全机型自动化测试覆盖。 UiAutomation、Instrumentation、Monkey稳定性测试、OTA升级、RECOVERY互刷、

2、单元测试自动 调度、固件基础性能、安全扫描和专项测试。 WIFI / USB / 串口等方式调度任务。 云测平台(ATS)打通了与终端的通讯、提供了报告的收集与整合、测试代码的质量管控,以及提 供了内部众测的问题反馈渠道和项目管理等功能。成果ATSUIpm众测专项MonkeyOTA安全Recovery单元测试Case 覆盖低CASE 质量差固件迭代快机型多缺少统一调度任务类型多无专项自动化固件升级引入案例来源业界有没有解决的方法 业界有很多出色的云测平台,但是魅族需要的是适合手机厂商、适合自身业务和测试流程的整套测试系统。业界的办法不适用 业界提供的云测服务更多聚焦在应用方面,而魅族的自动化测

3、试是从应用到固件全覆盖的。而且定制化需求高,机型信息需要保密等原因。引入案例来源测试框架平台开发Android源码Java、PythonJavaScript、C+Android结合业务平台化产品化培训技术支持优化研究技术经验服务怎么做到的测试场景未恢复,影响其他脚本容错性差,不稳定,执行效果差造了太多轮子(各自实现了一系列通用操作)部分前置条件需要手工构造依赖USB连接原始的测试log简陋,缺少操作步骤、预期结果没有捕获CRASH、ANR、无响应等异常脚本质量测试报告那些年踩过的坑不同机型需要多份代码或大量逻辑判断,维护成本高需要人工升级固件,然后才能进行自动化测试需要人工启动守护APP,选择

4、模块进行自动化测试需要人工确认失败用例那些年踩过的坑配置化自动化测试任务类型多,脚本类型多样,调度复杂固件迭代快,编译周期不固定,需要及时自动执行那些年踩过的坑任务化实践三实践一实践二实践三规范脚本整合报告 配置化 自动化实践四先定个小目标 任务化 项目管理守护APP监控运行时异常跟业务确定字段、格式Gerrit,Jenkins注解对接缺陷平台实践 1规范脚本 & 整合报告规范报告审核、构建规范脚本异常捕获,合入报告报告对接缺陷管理平台规范Ant & Gradle打包资源 Review & 版本控制/merge/abandonLINT扫描 &编译打包 & case 信息入库拉取脚本 & 选择模

5、块执行 & 异常监控守护APP代码GERRITJENKINS守护APPWEB实践 1规范脚本 & 整合报告整合并上传结果 & 展示报告自动化脚本守护APPWEB1.步骤2.期望1.调用脚本2.GIF截图3.CRASH4.ANR5.无响应6. MEIZU重启7.FLYME 重启8.全局LOG1.存储结果2.页面显示3.缺陷对接实践 1规范脚本 & 整合报告实践 1规范脚本 & 整合报告测试报告GERRIT进行代码审核、Jenkins 统一构建、Case信息入库要求脚本结束有效清理资源(账户、设置、黑白名单等)由守护APP调用脚本 ( 脱离USB执行 )脚本通过注解提供操作步骤、期望等信息实践 1

6、规范脚本 & 整合报告对操作过程GIF录制截图监控CRASH、ANR、无响应等异常,并收集运行时Log无须人工干预的自动化(任务调度计划)统一汇总测试资源通过模块配置适配不同机型不同类型固件模块配置抽象设备池平台调度实践 2配置化 & 自动化实践 2配置化 & 自动化仓库Flyme5 Flyme6Flyme5模块B模块C模块A联通版公开版电信版实践 2配置化 & 自动化模块引入“仓库”概念,对应一个模块集抽象设备池,集中资源(物理式集中局域网集中)守护APP添加推送功能,做任务分发、固件升级、用例执行实践 2配置化 & 自动化自动错例重跑通过模块化、配置化 提高脚本的健壮性和兼容性WEB端从一

7、个单纯的报告展示改造为任务中心,推送任务Drozer改造漏洞case化串口开发固件层面Monkey改造专项测试任务升级测试任务性能测试任务稳定性测试任务安全测试任务实践3-任务化调度仪器设备APP 探针应用稳定性固件稳定性指定时长指定机器种子执行CRASH ANRMEIZU重启FLYME 重启NORESPONSE基本性能监控Monkey实践3-任务化稳定性测试实践3-任务化稳定性测试实践3-任务化稳定性测试固件的大小趋势监控开机启动线程数监控应用启动时间性能测试实践3-任务化监控Native/Persistent/System/Cached/Foreground等分类内存的新增/减少开机时间开

8、机内存实践3-任务化性能测试升降交叉升级校验升级测试图表检查整包/增量固件质量固件升级历史测试结果对比校验升级前后基带/recovery/kernel是否正确,评估升级时间实践3-任务化不同RECOVERY 互刷升级实践3任务化升级测试扫描Activity/Service组件暴露同步安全信息至缺陷平台构造Intent检查组件安全性 云测平台ATS自动安全复测Text in hereText in here实践3-任务化扫描ContentProvider/BroadCastReceiver组件暴露安全测试实践3任务化安全测试专项测试(非仪器)UI卡顿onCreateonStartonResume

9、LayoutHandler网络请求内存泄露电量WebViewNavigation timingResource timingJS errors实践3任务化依据不同的任务类型在守护APP端执行不同的逻辑 专项测试主要采用动态代理技术 hook关键API仪器调度 生成各个任务类型报告上传服务端展示从调度层次增加任务类型概念统计各数据项并生成图表实践3-任务化实践小结终端管理功能内部众测功能VCC管理功能实践4-项目管理试用、反馈、绩效机型项目进度管理独立应用进度管理测试执行可以自动化,测试管理也可以自动化用平台方式解决项目管理过程复杂,信息滞后不同步的问题实践4-项目管理实践小结帮助各VCC负责人,测试项目经理和PMO团队简化工作流程减少沟通成本,提高工作效率目标实现了合理分配资源,保证设备池高效利用减少和降低自动化的使用限制,提高自动化效率和覆盖率魅族测试部团队500+,日常使用案例提供服务人数280+案例ROI分析案例启示、整合&强化测试框架,提高覆盖率、提供易用配置,增强脚本对不同设备、不同系统、不同应用版本和不同测 试任务类型适配,增强脚本的健壮性、“自动化

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论