登录    / 注册

魅族终端自动化测试探索之路

分享时间: 2016年12月9日 - 12日

分会场: 测试管理/质量平台

案例讲师

朱锦鹏

珠海市魅族科技有限公司 测试开发经理

朱锦鹏先生,目前居住于珠海,2011年7月起至今,朱锦鹏先生在珠海市魅族科技有限公司任职,现担任测试开发经理一职,负责Web测试开发、Android测试开发和平台技术开发。兼顾团队管理和测试技术的研究,对Web自动化和Android自动化测试拥有丰富的实战经验。

扫描二维码分享案例

 

案例简述

 

UIAutomator与Monkey的改造、平台与设备的通讯与调度、报告的收集与整合、测试代码的质量管控。 通过对测试框架的反思和对测试流程的提炼优化,我们用平台打破了固件、设备、测试脚本、测试报告等各项资源间的隔离,
实现了通过 WIFI/USB 调度 UIAutomator、Instrumentation、Monkey、基础性能以及各种专项辅助测试,构建了一个完整的易扩展、可配置的自动化测试体系,在方便自动化测试的同时,也为其他非测试人员提供了一个了解实际项目质量概况的捷径,为自动化测试在整个部门的普及与规范节约了大量的成本。

 

案例目标

 

问题:1、某些控件根据UiAutomator 框架无法获取,而这个控件是大量测试用例的入口,从而导致大量用例无法自动化。
   2、固件迭代周期短,测试机型多,同一套脚本不能完全适配不同固件和机型。需要每次执行自动化的时候进行适配,不智能,不自动化。
   3、自动化测试执行和case的提交没有质量保证,测试结果也没有确认环节,不能完全保证测试质量。
   4、测试资源缺少统一管理。
   5、测试任务繁重,而自动化不够自动化,大量占用测试工程师的时间。
   6、缺少专项的自动化测试。
   7、固件升级缺少自动化覆盖。
   8、测试工程师的编码能力不够,脚本质量缺少审核环节。
   
场景:固件迭代周期短,以上问题导致自动化不能很好的产生价值,既耗时,效果又不好。

预期目标:提高自动化测试的覆盖率、效率、健壮性,合理、高效利用测试设备资源,统一调度case,增加脚本审核和测试报告质量的审核,实现无人干预的自动化。

 

成功(或教训)要点

 

成果:
  将脚本的开发,审核、执行、以及测试报告的审核,整个过程串联起来,保证自动化测试的质量。

  在保证脚本质量的前提下提供易用、强大和全面的Android 自动化测试调度,提供以下任务类型调度:
    Android UI 自动化测试
    Android 安全测试
    Android基础性能测试
    Android OTA自动化测试
    Android Recovery 自动化测试
    Android 稳定性测试
    Android 单元测试
    Android 专项测试

  以上任务类型,每日自动构建,持续服务。提供整套的自动化测试服务,嵌入到各个项目,成功提高测试效率和覆盖率。

心得:
  1、自动化测试框架的强大支持,脚本开发流程的完善以及代码提交规范是自动化测试质量的首要前提,需要时刻强调和关注。
  2、要跟框架和平台的使用方保持密切沟通,要深入业务中切身感受使用方的需求来源,结合测试技术分析,搭建适合业务的自动化架构。
  3、跟测试工程师形成合作关系,随之测试工程师的测试技能的提示也衍生多种测试类型,做为测试系统提供方,可以扩展更多的测试任务类型,强化测试系统的同时也实际地帮业务方解决痛点。

 

案例ROI分析

 

合理分配资源,保证设备池的高效利用,减少和降低自动化的使用限制,提高自动化的效率和覆盖率。
魅族测试部团队500+,日常使用案例提供服务人数280+。

 

案例启示

 

1、整合不同原理的测试框架,取长补短,强化自动化测试框架。
2、提供易用的配置,从而增强脚本对不同设备、不同系统、不同的应用版本和不同的测试任务类型的适配,增加脚本的健壮性。
3、充分利用平台提供的资源管理和任务调度功能,开放给公司内部不同的部门自定义的任务进行调度。
4、让能自动化的更加自动化。
5、不能自动化的不要死磕,曲线救国,达到目的,解决问题才是刚需。
6、技术研究要有技术落地。要实际解决用户的痛点需求。
7、随着测试系统的发展,会有各种小众需求,需要确定是否为用户的痛点需求。既是痛点,必将除之。


 

案例在团队中的意义

 

通过对测试框架的反思和对测试流程的提炼优化,我们用平台打破了固件、设备、测试脚本、测试报告等各项资源间的隔离,实现了通过 WIFI/USB 调度 UIAutomator、Instrumentation、
Monkey、基础性能以及各种专项辅助测试,构建了一个完整的易扩展、可配置的自动化测试体系,在方便自动化测试的同时,也为其他非测试人员提供了一个了解实际项目质量概况的捷径,为自动化测试在整个部门的普及与规范节约了大量的成本。