手机自动化-UiPath

image

简介

在UiPath最新社区版20.4中,添加了手机自动化相关的功能。本篇文件就该功能做简单测试和演示说明。

一、下载安装Appium

Appium是一个用于本地、混合和移动web应用程序的开源测试自动化框架。
它使用WebDriver协议驱动iOS、Android和Windows应用程序。

官网地址:http://appium.io/

下载Appium-windows-1.15.1版本链接:https://github.com/appium/appium-desktop/releases/download/v1.15.1/Appium-windows-1.15.1.exe

在下载好Appium之后,双击exe文件进行安装,所有选项按需配置即可。安装完成之后,双击桌面上的图标,选择"高级设置",将服务器地址改为127.0.0.1,服务器端口默认即可,如下图所示:

image

点击Start Server即可开启Appium服务,在启动之后,请勿关闭窗口

image

二、下载Android SDK

下载地址: https://www.androiddevtools.cn/

此处需要下载两个压缩包文件,下载好之后,将第一个文件android-sdk_r24.4.1-windows解压至指定目录中国,把第二个压缩包解压出来的 platform-tools 文件夹放在第一个文件解压的根目录下。

如果不想下载这两个文件,则可以直接下载我打包到一起的压缩文件,下载好之后,解压到某个目录即可。

网盘下载链接:https://pan.baidu.com/s/1bkIXPL-97COgIex6tBpuGg 提取码:14qg

知识星球下载链接(本文所有代码文件都可以在同一个主题中下载到):https://t.zsxq.com/jUBq7Ii

下载Android SDK Tools: 先找到SDK Tools,下载最新的版本即可。选择zip的,解压缩至目标路径位置即可

image

下载Platform-Tool工具
image

解压后的文件如下图所示:

image

四、连接手机

在开发手机客户端软件的时候,通常会使用模拟器和真机两种方式来对APP进行调试,在这里两种方法都会介绍,实际操作过程中,可以根据自己需求来进行选择。

1. 模拟器

现在测试或者使用APP的模拟器有很多种,比如mumu、逍遥安卓模拟器、夜神模拟器,但是这些都是服务于游戏,并不能作为调试软件的模拟器来使用。所以我们使用Android SDK中自带模拟器。

a. 安装SDK

在下载过程中,可能会出现较多问题,可能是网络或其他。如遇到问题,可在知识星球提问咨询。

打开SDK中的SDK Manager.exe文件,安装相应的API及其他资源文件。


image

如下是我安装的Android 4.0.3相关的SDK及镜像。

勾选Update/New即可以看到所有的API及其他文件,可以按需下载对应的API及镜像。

image
b. 创建模拟器

打开SDK中的AVD Manage.exe文件,就可以开始创建模拟器。


image

按照如下步骤创建一个模拟器设备。

image

启动模拟器:选择上一步创建的模拟器设备,点击Start就可以启动模拟器。之后按照"连接测试"章节中的步骤检查模拟器是否正常工作。

image

2. 真机

a. 开启开发者模式

每个手机开启开发者模式的方式可能存在差异,如果不知道如何开启自己手机的开发者模式,可以在百度搜索"xxx型号手机如何开启开发者模式"。

在开启开发者模式之后,需要将开发者选项中USB调试勾选上。

b. 连接电脑

在连接电脑时,"可能"需要安装手机的驱动程序,这样电脑才可以识别打手机。

3. 连接测试

a. 将adb添加到环境变量(可选)

创建环境变量

"C:\Work\Android\android-sdk-windows"这个路径是我自己存放SDK的文件夹,可以根据自己的实际情况替换


image

将创建的环境变量添加到Path中


image
b. 检查设备是否连接

win+r打开cmd窗口

image

如果添加了环境变量,则直接输入命令adb devices
如果没有添加环境变量,则需要进入到"%Android_SDK_HOME%\platform-tools"目录中,然后执行.\adb.exe devices,在命令输入完之后,会显示出当前计算机中挂载着几个手机设备。

如下,我当前有两个手机设备,其中98895a434a354c3443这个是我的真机,emulator-5554是模拟器(因为是关着机,所以是离线状态)

image

如果在这列表中没有设备,则需要根据上面章节检查模拟器或者真机是否安装正确。

五、UiPath手机设备管理

1. 创建Mobile Testing项目

在最新版的UiPath Studio中,提供了一个New Mobile Testing Project的手机测试模板项目,根据此模板创建项目,会在项目中自动添加UiPath MobileAutomation Activities依赖,同时在菜单栏中会出现Mobile Automation的图标,如下图:

image

点击mobile Automation,选择下拉菜单中的Mobile Device Manager

2. 新建设备

如下,在Mobile Device Manager中添加一个新的设备

image

如下图,填写必要的设备信息。其中Appium URL中/wd/hub不能去掉,Device Name需要从上一章使用"adb Devices"命令查找出的设备名
image

3. 新建应用

如下在Applications中添加一个应用


image

4. 测试运行

点击Start An Application,打开对话框

image

在其中选择已创建好的Device和Application,点击Connect。

image

在点击Connect之后,在Appium的窗口中,会出现安装应用的日志信息,可以通过这个日志检查是否连接成功,如下:

在连接过程中,肯能会出现一些问题,以下是我遇到的:

  • error: cannot remove listener'; Code: '1'':没有安装Android SDK Build-Tools,回到Android SDK Manager,点击下载Android SDK Build-tools(Rev:29.0.3),下载好之后会存放在%ANDROID_HOME/build-tools%目录中,将aapt.exe复制到Tools目录。
  • Could not sign with default certificate.:以管理员身份重新启动Appium即可。
image

连接成功之后,会在Mobile Device Manager面板中出现模拟器或真机的画面,之后就可以进行自动化脚本的录制或者编写。

image

六、脚本编写

跟桌面上的自动化一样,UiPath针对手机自动化也提供了一些自动化的控件,这些控件都可以获取到APP上的元素(做过Android开发的同学应该懂),如下面一些代码:

android.widget.TextView
<mbl android:className='android.support.v7.widget.RecyclerView' />
<mbl android:className='android.widget.EditText' idx='2' />

所以通过这种方式,可以轻松地获取到需要的元素,使流程更加稳定。

如下代码是通过UiPath自动化添加事件提醒:

image

七、总结

在将模拟器或真机与UiPath连接时,可能会出现各种问题,对于未做过开发者的同学来说可能难度会比较高。在开发脚本时候,因为需要通过Appium来与模拟机/真机进行交互,所以调试速度比较慢,也比较麻烦,并且Appium并不是很稳定,即便是连接成功,在调试过程中也会出现其他错误。

代码或流程脚本下载: https://t.zsxq.com/jUBq7Ii

广告: 在使用UiPath测试手机自动化过程中,如遇到问题都可以在知识星球中进行提问讨论。

知识星球链接:https://t.zsxq.com/beqNjUJ

问题收集

  • 安装SDK

1.问题一: x86_64 emulation currently requires hardware acceleration!
解决:https://blog.csdn.net/shareye1992/article/details/81777387

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容