关于QCon2015感想与反思

简介:

   QCon2015专场有不少关于架构优化、专项领域调优专题,但能系统性描述产品测试方向只有《携程无线App自动化测试实践》。

 

    (一). 携程的无线App自动化

    《携程无线App自动化测试实践》主要介绍了 携程在App自动化方向 进展。

    1. 先总结下他们做到了些什么:

    (1). 移动设备真机自动化测试集群,及集群监控。

    (2). 集群中设备可提供远程人工控制服务(远程操作手机屏幕)。

    (3). 基于Appium编写案例。

    (4). 建立基本的自动化测试模式(自动化案例:手工案例 为 3:7)。

         Image

 

     2. App自动化测试的产出效果:

         Image(1),

 

    (二). 反思

    1. 携程的可改进之点:

    (1). PC利用率低下:携程1台PC只挂2台移动设备。

        adb查找设备/模拟器 端口是5555~5585,每个设备/模拟器占2个端口,所以PC一般可以挂15个设备/模拟器。当时我们做移动自动化测试时,就是一台PC挂6~8台移动设备。

        当然,携程不这么做肯定有原因:

        a)adb-server与移动设备 I/O 时,会不定期出现卡死。

            原因:移动设备没有返回,导致adb-server一直read()不到数据。另外,adb-server和设备I/O时,是加锁并且没timeout的,这将导致:一台设备读卡死,其他设备也别想干活了……

            解决方案:adb监控,发现异常adb,干掉并重启。重启adb会有副作用(执行中案例会失败),但可通过:案例执行的幂等 与 重复执行失败案例 解决。

        b)adb无法承受大量 I/O 并发

            adb设计目标并不是为了高并发(从 锁+子进程数限制 可见)……所以当15台设备同时进行高频指令传输时,是很慢的……但单PC负载6~8台移动设备,还是可以的。
       
            所以,恶意猜测下,携程只挂2台目的就是为了省事。

    (2). 测试结果 不具备 功能正确性  结论

            携程的某些测试类型(如:可达性测试、及所谓的冒烟测试......)不能给出功能正确性判断。这在业界是有争议的,一部分人认为:可测试Activity页是否崩溃/Webpage是否加载成功;另一部分则认为:需要人手返工测试,保证功能正确性,所以它没必要存在。个人更倾向后者。另外,这也从侧面反应出一个问题:UI级别的自动化测试实施不容易,这里就不扯远了。

 

    2. 携程的可取之处:

    (1). 提供设备远程人工控制服务(远程操作手机屏幕)。

        该功能其实并不新鲜,Testin早在2012年已对外提供类似服务,只不过13年后屏蔽对外。它的优点在于统筹资源,可减少设备冗余。

    (2). 基于Appium编写案例。

        我之前也负责过YY的移动端测试框架"TestAgent"的实现与维护,之所以认为 基于Appium实施自动化测试 可取,原因有二:

        a)能提供良好的 案例编写/编程 风格。

                UI自动化测试框架实施,我认为有3个重点:

                1. 操作 被测试应用 UI元素 的方法。

                2. 提供易读,易用API。

                3. 提供方便,完备的 元素索引 方式。

                其中2,3是编写优雅测试案例的基础。当然,对于2,3,Appium和TestAgent都是具备的。

        b)开源社区支持。

                Appium与其他测试框架(包括:阿里,百度,还有YY……)差别就在这里。

                开源社区提供了:大量经验交流,技术支持与持续改进; 
 
                另外,开源工具的广泛普及也降低了日后人员招聘和业务交接的难度。

    (3). 携程拥有独立的基础工具研发部门支撑各上层业务测试

                以上说的优与劣,皆技术层面问题。但这个非技术性问题,才是我最大感触。

                自从测试中心分拆到各个项目组后,带来了更高效的项目团队,但我感觉存在一些副作用:知识与工具共享比以前困难。我想这也可能是测试中心拆分后,自动化测试方面突破有所减缓的原因之一,业务测试人员在日常测试中是很难兼顾 工具开发+自动化平台运营 与 案例编写+维护 2种职责的。携程自动化测试有此进展,其有基础工具部门支撑是很大原因,而这也是恰恰公司所缺乏的。
 


本文转自hyddd博客园博客,原文链接:http://www.cnblogs.com/hyddd/p/4932595.html,如需转载请自行联系原作者。

相关实践学习
使用CLup和iSCSI共享盘快速体验PolarDB for PostgtreSQL
在Clup云管控平台中快速体验创建与管理在iSCSI共享盘上的PolarDB for PostgtreSQL。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
3月前
|
人工智能 运维 安全
【年终总结系列 2023】成长与收获:回顾过去、展望未来,加油2024!
【1月更文挑战第1天】年关将至,富余的时间也稍显多了些,遂写下此文,好好回顾一下自己这一年的收获,同时也立下2024年的新年flag。
|
4月前
|
Java 关系型数据库 MySQL
八年多开发经验分享:历经各种跳槽、裁员后一步步走上了人生巅峰
从接触开发至今已有8年多,从实习到带团队,也算总结出了一部分经验!
|
Web App开发 云安全 前端开发
2020 年末总结,脚踏实地,一步一个脚印——致敬自己一年的心酸历程
恰逢官方征文,谨以此篇记录自己一年的心酸历程与前端知识的感悟。
220 0
|
数据采集 搜索推荐 算法
|
消息中间件 分布式计算 负载均衡
阿里技术面全A,终面却被产品经理拉下马,我不服
阿里技术面全A,终面却被产品经理拉下马,我不服
阿里技术面全A,终面却被产品经理拉下马,我不服
赛伯乐叶聚利:创业需要经历三个境界
没有产品以及模式创新,创业是不可能成功的。
471 0
阿里云MVP戚俊的玄奘之旅:道路在脚下,修行在心中
从戈壁回来后1个礼拜,我时常在想,当年玄奘法师的成就究竟是得自佛国经文,还是源自西行之旅的一路修行。所以,也就有了这篇名为《玄奘之旅——道路在脚下,修行在心中》的游记,至终将西行的你。
2975 0
钢哥的MBA备考心得 - 献给同样努力的你
MBA备考漫漫征途,只为追求更好的自己。以下是我自己纯手工整理的MBA备考思维导图,钢哥用它们顺利考入了复旦,希望对其他同学也能有所帮助。
1973 0
转行之路—心路历程(一)
转行之路伊始的心路历程
1970 0