为什么我选择的是 UiAutomator?

文章讲述了作为安卓整机测试工程师,为何选择UiAutomator而非robotium,因为UiAutomator支持跨应用交互,无需重新签名,且与shell结合能提高效率。作者提到Appium虽能支持Android和iOS,但在某些场景下不如UiAutomator方便。通过shell运行UiAutomator可以节省资源,提高测试的灵活性和效率。
摘要由CSDN通过智能技术生成

目录

前言:

作为一个安卓整机测试工程师,我不用 robotium 的理由是:

对比之下,UiAutomator 就比较适合做整机的测试,

接着说说,为什么是 UiAutomator 与 shell 结合?


前言:

在开发应用程序时,我们需要对其进行各种测试,以确保其稳定性和可靠性。其中,UI 自动化测试是一种常用的测试方法,它可以通过自动化操作来测试应用程序的功能和性能。在 UI 自动化测试中,我们可以选择不同的测试框架,如 UiAutomator、Appium 等。

作为一个安卓整机测试工程师,我不用 robotium 的理由是:

  1. 跨应用交互功能较弱,而我们有很多交互的自动化测试用例;
  2. 需要重新签名应用,我做整机测试,是几十个应用需要测试,在现在敏捷开发正流行的当下,两周左右即出一新版本,我需要对它们都重新签名,额,想想都觉着累。(那现 在想想,却也并非完全如此,我们可以通过 md5 值,来对比应用在设备前一版与后一版有无更新,只要针对有更新的应用重新签名即可,这个可以减少任务,同时亦可将测试重点放在那些有更新的应用上,可谓一举双得)。

对比之下,UiAutomator 就比较适合做整机的测试,

  1. 跨应用很容易;
  2. 不需要重新签名;
  3. 新版本出来以后,用例重用率高,同一应用,不同屏幕大小的设备亦可重用。

当我掌握了 UiAutomator 的时候,听说 Appium,既可做安卓,亦可做 iOS,也想学着来。另一原因是想用它来做一些网页的自动化,因为 UiAutomator 本身对一些网页上的控件,查不到它的属性,据查 Appium 是可以的,便想学着来试试。在安卓上搞了一条用例后,便弃之不用了,不想用这个,着实不便。

  1. 需要连着 usb 线,或局域网,万一我跑到开关 WiFi 的用例,咋整?我这边执行 UiAutomator 全用 shell,跑起来以后,都是连着 AC charge(AC 就是充电头) 的,不需要开着一台电脑陪着手机一直运行着,从节能角度来说,一年下来,却也是要省不少钱哩(虽然咱大公司,不差钱);
  2. 用例中有诸多设置,限制了设备 ID,平台 ID 等等,换台手机跑?我要写了 800 条,难道一条一条更新?

接着说说,为什么是 UiAutomator 与 shell 结合?

其实,我们做自动化黑盒测试,我们最主要的目的是什么呢?

  1. 节省资源,这资源又分为:人力资源,物质资源(比如我们现在测试的智能手机,据说其运算能力,已超六,七十年代,老外将卫星送上天所用的那些个计算机了,其本身已够强大,却还要一台 pc 陪跑,我感觉就挺事儿的,虽然有时是技术要求或限制啦)
  2. 保证产品稳定性,发现问题。这个是自然的事,不消多说的。

围绕这两个主要的目的,那工具的选择上面,自然是越简单实用,效率越高越好。无论是 UiAutomator,还是 Appium 或其他什么工具,在最后的最后,都是要来那一下子,点击嘛,不操作哪里有什么测试可言?点击的啥呢?还不是坐标?而我们拿到了这个控件的坐标后,只消点击对应的坐标即可。哪个工具速度快,通用性好,才是首选。从这点来说,以上的工具各有利弊。我们使用 uiautomator dump 来获取 xml 档,从 xml 档中过滤出控件的坐标值来,使用 shell 脚本来执行,速度是非常快的。这个比 UiAutomator 本身要快的多。快多少?这点需要具体的用例来说明了,这是后话。

  作为一位过来人也是希望大家少走一些弯路

在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。

(软件测试相关资料,自动化测试相关资料,技术问题答疑等等)

相信能使你更好的进步!

点击下方小卡片

【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N6B9http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=fheO5TYOLFkTCTG7WyOlFgKZLQhcY3o1&authKey=DQU6aFiRapPf3G7HW0UtSW0eVzQ8ENxW7hbGr34spyUyATul66ZiffCmuiDp6YAm&noverify=0&group_code=574737577 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值