大网易最近很火,各爆款产品频频发布。 全猿参与的网易互联网+的战场,离不开产品、项目、设计、开发的勤恳付出,同样也离不开QA团队的尽职恪守。
对于杭研QA部门来说,如何迎合快速多变的版本发布,是我们必须面对的课题。 怎么把话题拉回自动化测试呢?不论是移动互联网业界、还是网易杭研,各QA团队对于自动化测试和持续集成历来重视,但具体实践各有故事。
我所在的易信公众平台QA小组也面临过那些年理想丰满、现实骨感的经历。下面,我们将易信公众平台在自动化测试/持续集成上的心路历程,向大家做个汇报。 顺带介绍一下我们基于Robot Framework搭建的全端UI自动化框架,供大家参考,交流,指正。
UI自动化测试项目,通常在移动互联产品测试项目的开始之初热火朝天,接着变成热锅上的蚂蚁,然后会是烫手的大山芋。 易信公众平台在之前的UI自动化,采用了TestNG+Dagger+Selenium的框架组合,曾经也输出了一定量的用例,最后因为类似的原因无以为继。 梳理过往经验,UI自动化主要的痛点、难点在于:
对于QA团队的测试人员来说,其强项是精通业务逻辑、其弱项是缺少编程经验和测试框架全栈知识。 如果能有一个通用框架,可以让测试人员快速、方便构建与自己业务逻辑一致的自动化测试用例集并持续集成,那真真是极好的。
UI自动化测试框架有几十个(商用的,开源的),我们在选择之前,梳理我们自己的主要诉求:
选型具体过程,在此不详细展开。 综合各种因素,我们最后选择了基于关键字技术的Robot Framework框架, 通过定制化封装的,支持多端的UI自动化框。
RFUI 是:一个基于Robot Framework(关键字驱动+分层抽象)、跨平台(Web/Android/iOS/Desktop)的UI自动化框架。 RFUI 具备如下特性:
目前我们易信公众平台QA小组,在三个平台产品中,使用RFUI框架进行 Web,Android 端的UI自动化脚本应用。
测试成员反馈: 用例编写简洁、明了, 可读性、可维护性强, 在项目持续集成中稳定性好。
当前的RFUI 仅支持 Standalone 部署方式,在环境部署方面仍旧较繁琐;我们正在进行RFUI2.0(见图5)开发。 目的是支持C/S部署方式,提供公用的基础业务服务器,精简客户端部署步骤。
同时,我们也在尝试往平台化尝试,也期望与STF/TC等平台对接,因为技术积累问题,还处于预研阶段,希望各产品高手多多指点。
移动互联网测试领域在过去5、6年已经完成了基本技术积累,当下&未来移动测试要求从业人员朝着全栈方向发展;让我们从功能测试出发,利用自动化测试腾出宝贵精力,向专项测试、安全测试纵深挺进。Fighting! Fighting!
本文来自网易实践者社区,经作者汪洋旦授权发布。