你的UI自动化追得上业务的变更和UI更迭吗?当今瞬息万变的时代,成千上万的App围绕着现代人生活的点点滴滴。为了满足用户的好的体验和时刻的新鲜感,这些App需要时刻保持变化,也给 UI自动化落地实施带来了挑战。

1、自动化测试技术演进

为了应对这些挑战,自动化测试技术也在不断更新迭代。从技术发展的角度来看,自动化测试经历了四代。
第一代:传统的“录制-回放”技术。这种技术模拟PC操作,记录键盘和鼠标的操作,对环境的依赖性太强,只要新版本的用户界面或功能发生改变,以前录制的信息就不能用了,维护成本太高。
第二代:脚本化的自动化测试。利用脚本进行结构化的自动化测试。测试脚本可以通过工具自动生成,也可以由测试开发人员手动开发完成。当软件功能发生变动时,测试脚本也需要同步更新。
第三代:测试框架。主要是把测试脚本抽象化、模块化,包括数据驱动与关键字驱动,测试人员可以直接使用测试开发人员封装好的业务模块。编写出的自动化脚本也具有一定的泛化性。项目的维护主要体现在业务模块封装或关键字抽象等方面。
第四代:AI自动化测试。在传统的自动化测试技术基础上,引入AI技术,主要想解决自动化测试中的高通用性、低使用门槛及低维护成本等自动化测试的难题。
目前,AI自动化测试仍处在初期阶段,技术与方法的应用在不断地走向成熟。网易易测SmartAuto智能UI自动化测试平台或可代表当前AI自动化测试最前沿的实践应用。

2、UI自动化核心痛点

网易集团的业务领域极为丰富,App应用数以百计。而网易易测由网易杭州研究院孵化,作为网易测试领域基石,在打造全维度质量效能体系,助力业务腾飞方面,默默耕耘了10年,可谓经历了自动化测试技术演进的整个历程。针对UI自动化,网易易测总结了4个方面的痛点:
准入门槛高:传统UI自动化框架需要编程基础,并且对测试框架有一定掌握,对测试人员技术能力要求较高。
脚本维护困难:团队内测试人员技术能力参差不齐,可能存在编码风格不统一,代码不规范等多种问题,导致多人协作维护难度大。
脚本兼容性不足:传统编写方式如ID与Xpath受框架、布局与机型等因素影响较大,测试脚本往往需要进行针对性编写,导致兼容性不足,牵一发而动全身。
专业机房搭建难度高:机房搭建专业性较高,如机柜设计、网络架设、设备自动化运维等,这些均对技术人员提出较高的要求。

3、SmartAuto-智能UI自动化

面对这4大痛点,易测基于网易多年来积累的测试实践经验,输出了基于人工智能的UI自动化测试工具SmartAuto,并围绕它提供完整的移动应用测试服务解决方案,拥有从部署移动设备机房到全面测试移动应用的功能及性能的完整能力。
SmartAuto的核心能力是通过机器学习及图像识别技术实现智能控件识别,通过自然语言的脚本编写方式有效降低了编写测试脚本的成本;而易测提供的移动测试平台结合SmartAuto工具与机房能力,提供了整套基于人工智能的移动测试解决方案,并提供了不同规模的机房服务体系的专属云解决方案,针对各种测试场景提供稳定的基础设施以及丰富的专有云能力。SmartAuto与机房服务完美结合,打造多维度的云真机测试链路,覆盖移动应用测试的全生命周期,同时提供性能专项采集等扩展性服务,助力交付高可用应用的同时,有效保障了应用的性能及稳定性。其主要核心特性如下:

3.1 SmartAuto核心特性

智能易用
UI 智能自动化工具 SmartAuto,具有业界首创的具有自主学习能力的控件识别技术,能够精准定位并识别UI元素,支持动态内容识别、相对元素定位等高鲁棒性的定位识别手段。基于SmartAuto框架,测试工程师零代码编写自然语言的自动化脚本,大幅度提高了脚本可读性,同时降低了自动化测试的门槛,极大地节省了人力和时间成本。
高效稳定
易测平台提供的专有云机房服务体系,适用于公有云、私有云等不同的应用场景,具有无需部署开箱即用、定制化开发集成、高可用轻运维等特点。机房服务与SmartAuto高度集成,可以高效利用机器池,支持多设备智能并发测试。除对主流的自动化框架进行支持外,专有云服务还会提供真机调试、设备管理以及各种企业级定制能力,为平台提供高效稳定的移动端测试能力保驾护航。
全链路覆盖
易测平台不仅能够提供兼顾功能测试和兼容性测试的核心服务,还提供了包括报告服务、性能专项采集等在内的基础服务和扩展服务。可以覆盖“编写脚本-云端提测-查看报告-远程调试”的移动端应用全链路测试流程,适用于各种复杂的测试场景。提供的测试报告包括应用维度的缺陷汇总、详尽的性能数据以及联动式的测试信息展现。基于ADB或 SDK的性能工具可以精准获取移动应用多维度的性能参数,深层次的定位各种性能及稳定性问题。

3.2 SmartAuto核心价值

  • 上手 0 门槛,iOS/Android 设备均实现即插即用,随写随调
  • 自然语言测试用例可读性高,编写成本低,同时支持宏语法,便于公共操作抽象,进一步提高用例可维护性
  • 用例执行高鲁棒性,前端结构变化无需更改用例适配
  • 执行集创建简单,支持智能并发、分组依赖管理,更高效更灵活
网易易测在网易云音乐、网易严选、网易支付等多个应用收到了显著的效果,功能回归测试效率提升90%,UI自动化线上巡检收益召回率达到85%。
回到开始的那个问题:“你的UI自动化追得上业务的变更和UI更迭吗?”,网易易测给出的答案是:YES。
网易易测团队基于网易10年质量效能经验积累,为企业提供测试管理、UI自动化测试、接口自动化测试、性能压测等整体解决方案,助力企业建立健全质量效能体系,欢迎试用体验
 
 

【解决方案】智能UI自动化测试的更多相关文章

  1. 腾讯优测优分享 | 游戏的UI自动化测试可以这样开展

    腾讯优测是专业的自动化测试平台,提供自动化测试-全面兼容性测试,云真机-远程真机租用,漏洞分析等多维度的测试服务,让测试更简单! 对于目前的两大游戏引擎cocos-2dx.unity3D,其UI自动化 ...

  2. 【转】Web UI自动化测试原理

    目前市面上有很多Web UI自动化测试框架,比如WatiN, Selinimu,WebDriver,还有VS2010中的Coded UI等等.  这些框架都可以操作Web中的控件,模拟用户输入,点击等 ...

  3. UI自动化测试(三)对页面中定位到的元素对象做相应操作

    前两天分别讲述了UI自动化测试基础以及对页面元素该如何进行定位,这一篇自然就是对定位到的页面元素对象进行相应操作啦. 阅读目录 1.常用操作元素对象的方法 2.鼠标事件操作 3.键盘事件操作 4.We ...

  4. <自动化测试方案_8>第八章、手机端UI自动化测试

    第八章.手机端UI自动化测试 (一)APP测试分类 1,原生APP:Native页面是使用原生系统内核的,相当于直接在系统上操作 2,H5APP:先调用系统的浏览器内核,相当于是在网页中进行操作,较原 ...

  5. 网易与Google合作发布开源UI自动化测试方案 牛逼:Google 方面评价,这可能是目前世界上最好的 Android 游戏自动化测试方案。

    美西时间 3 月 19 日,在 GDC 开幕第一天的 Google 开发者专场,Google 发布了一款由网易研发的 UI 自动化测试方案:Airtest Project.Google 方面评价,这可 ...

  6. Robot Framework使用Phantomjs进行无界面UI自动化测试

    Robot Framework 是一款关键字驱动的验收自动化测试框架,现在在国内使用的越来越广泛了.一种通用的Web UI自动化测试解决方案是Robot Framework+Selenium2Libr ...

  7. 网易与Google合作,于GDC开幕首日发布开源UI自动化测试方案

    [TechWeb报道]美西时间3月19日,在GDC开幕第一天的Google开发者专场,Google发布了一款由网易研发的UI自动化测试方案:Airtest Project. Google方面评价,这可 ...

  8. 从一次故障聊聊前端 UI 自动化测试

    背景 事件的起因在于老板最近的两次"故障",一次去年的,一次最近.共同原因都是脚手架在发布平台发布打包时出错,导致线上应用白屏不可用. 最神奇的是,事后多次 Code Review ...

  9. 使用WatiN进行UI自动化测试

    Watin是一个UI自动化测试工具,支持ie/firefox,官方网站:http://watin.org/. 主要有以下特点: 支持主要的html元素,见:http://watin.org/docum ...

  10. 如何正确选择UI自动化测试

    近年流行一个词-UI,和UI搭边好像都那么高大上,软件测试行业也不例外,比如UI自动化测试. 常见的UI自动化测试程序有哪些呢? l  带UI的Unit Test,比如mock掉底层代码,仅仅测试UI ...

随机推荐

  1. JDK源码阅读-------自学笔记(九)(常用类型Integer初探)

    常用类 主要分为几部分需要学习: 包装类的介绍和使用 字符串的介绍和使用 时间类的介绍和使用 其他类型介绍和使用 包装类(Wrapper Class)基本知识: 1.基本数据类型不是对象,但有时需要将 ...

  2. 轻松下载k8s.gcr.io,gcr.io,quay.io镜像

    目录 一.系统环境 二.前言 三.使用现成的镜像代理仓库下载镜像 3.1 使用阿里云镜像仓库 3.2 使用lank8s.cn镜像仓库 3.3 使用中科大镜像 一.系统环境 服务器版本 docker软件 ...

  3. C# Linq、Lambda表达式树动态构建、合并条件扩展方法

    前言 日常开发时,使用Linq和EF经常会在存在多条件查询,或者说动态条件查询时,便存在合并表达式树的情况.基于这种情况结合一些资料,写了个扩展类,代码如下: 代码实现 /// <summary ...

  4. Java类加载过程&&静态代码块的初始化过程

    问题的引入 还是老规矩,先说说自己遇到的问题. 最近看到了一个比较有意思的Java程序,初次看到这段程序执行的结果还是挺让我意外的,话不多说先上程序,大家也可以揣摩一下(大神自行略过......) c ...

  5. 微软在Microsoft Build 2024 上 发布了.NET 9 预览版4

    在 Microsoft Build 2024 上,与往年一样,.NET 不是会议主题演讲的主题,但是微软在这个大会上为.NET 推出一组新的功能和工具,旨在使 .NET 开发更快.更轻松,具体内容可以 ...

  6. 运算符优先级 JAVA11

    **运算符优先级 ** 规律:算术运算符优先级较高,关系和逻辑运算符优先级较低.多数运算符具有左结合性,单目运算符.三目运算符.赋值运算符具有右结合性. 运算符的优先级 举例 使用优先级为 1 的小括 ...

  7. 基于FPGA的计算器设计---第一版

    欢迎各位朋友关注"郝旭帅电子设计团队",本篇为各位朋友介绍基于FPGA的计算器设计---第一版. 功能说明: 1. 计算器的显示屏幕为数码管. 2. 4x4矩阵键盘作为计算器的输入 ...

  8. foxy rviz2 "rviz_common/Time"报错问题

    报错内容 The class required for this panel, 'rviz_common/Time', could not be loaded. Error: According to ...

  9. RHCSA认证学习_尝试

    第一天 一,linux系统的基本概念以及命令终端字段含义介绍 linux系统的基本概念: ·多用户的系统:允许同时执行多个任务 ·多任务的系统:允许同时执行多个任务 ·严格区分大小写:命令,选项,参数 ...

  10. python-去掉写入csv文件的多余的一行空白行

    如执行下面的代码: 1 import csv 2 3 if __name__ == "__main__": 4 5 content1 = ['hello'] 6 content2 ...