APP自动化appium环境搭建指南

环境配置

参考资料:MAC系统安装appium环境教程_mac 安装install appiums-CSDN博客

1、安装Android studio

2、安装好后,查看环境变量

  • 输入open .bash_profile编辑环境变量
  • 输入命令行“source .bash_profile”,加载新的环境变量
  • 输入“adb devices”检测是否成功

3、安装Opencv4nodejs

命令:

npm -g install opencv4nodejs --ignore-scripts

提示:ffmpeg cannot be found

命令:

brew install ffmpeg

提示:mjpeg-consumer cannot be found.

命令:    

npm i -g mjpeg-consumer

提示:set-simulator-location is not installed

命令:

brew install lyft/formulae/set-simulator-location

提示:idb and idb_companion are not installed

命令:

brew tap facebook/fb

brew install idb-companion

sudo pip3 install fb-idb

提示:applesimutils cannot be found

命令:

brew tap wix/brew

brew install applesimutils

提示:ios-deploy cannot be found

命令:

npm install -g ios-deploy

提示:gst-launch-1.0 and/or gst-inspect-1.0 cannot be found

命令:

brew install gstreamer

提示:bundletool.jar cannot be found

  1. 前往地址https://github.com/google/bundletool/release,下载bundletool.jar,改名成bundletool
  2. 在android sdk目录下,创建bundle-tool目录,把jar包放入该目录下
  3. 在终端切换到当前目录下,并执行chmod +x bundletool.jar命令给jar包添加执行权限
  4. 修改环境变量,path后追加:$ANDROID_HOME/bundle-tool/ 

Appium连接真机

参考资料:Appium学习记录(查看手机应用的包名及Activity)_appium 查看所有应用-CSDN博客

1、获取设备名称

查看设备名称:adb devices -l

2、利用adb获取appPackage和appActivity

  1. 获取手机内所有应用的包名,输入adb shell pm list package -f
  2. 可在f后加要查找的app的关键词可快速找到你想要的app包名,例如微信adb shell pm list package -f tencent

         包名为:com.tencent.mm

     3. 获取当前应用的包名
      (1)第一步先输入adb命令adb shell am monitor

      (2)然后手机端打开想要查看的应用,例如微信

      (3)输入q回车后退出

     4. 根据获得的包名来获取Activity

      (1cmd终端先输入adb shell
      (2)输入命令monkey -p 包名 -vvv 1 ,例如微信:

     monkey -p com.tencent.mm -vvv 1

         可以看到微信Activity:.ui.LauncherUI

     5. 打开想要查看的应用,输入以下命令

         WIN系统:adb shell dumpsys window | findstr mCurrentFocus

         MAC系统:adb shell dumpsys window | grep mCurrentFocus

基于Android studio的安卓模拟器配置

参考资料:万事屋

1、Android Studio的安装与调试

AS的安装十分简单,但是可能需要配置代理。在官方下载网站里,Download Option处可以选择“Mac (64-bit, ARM)”。安装后需要配置代理,才能下载基础的虚拟机组件。配置代理部分就不详细说了。

在安装完成后,需要进行一些配置。打开Preference- Appearance&Behavior- System Settings- Android SDK。在SDK platform中可以看到你所下载的安卓版本,默认下载的是Android API 33,为Android 12,如果需要特定的安卓版本,可以在这里下载安装。

随后切换到SDK ToolsTab,根据自己需要的版本安装Layout Inspector。如果不知道是哪个的话可以全部安装。

以上安装可能都需要代理,如果下载失败可以尝试更换代理或者网络环境。

2、安卓模拟器的配置和调试

注意,一般来说模拟器的大多数参数一经设置,不能更改。所以创建的时候要多加注意。

要从AS主界面进入模拟器管理页面,在More Action中。

一般来说会内置了一个模拟器用于测试,可以先尝试运行一下,AS的模拟器似乎是基于QEMU。左上角Create device可以创建新的模拟器。型号主要影响分辨率,可以随便选选,但是有的型号包含Google play,对于镜像有不同的需求。随后在高级设置里面,一定要配置好内建存储空间的大小,因为这是不能更改的。

这边设置内存3G就已经可以很好的运行安卓12与明日方舟,2G会有些微卡顿。内存在创建后依旧可以更改,可以多做尝试。再次强调内建存储空间的大小在创建后似乎是不能更改的,需要大容量的话需要提前做好准备。由于是直接运行的arm版本的安卓,效率很高运行流畅,但内存统计似乎存在bug,和docker desktop一样,显示占用会很高,但是从内存压力来看并非内存占用很高,因此可以放心。但是每次运行都需要打开AS再点来点去,很麻烦,因此下面给出可以直接运行模拟器的方案。

启动设置:

注意:这里最好冷启动,因为热启动会导致重启后系统重置的问题。虽然冷启动开机慢但是可以保证app不会被重置。

3、独立启动模拟器,并“封装”成应用程序

(1)、首先找到模拟器存放位置。在前文中提到的AS设置里System Settings- Android SDK下,可以看到目录的位置。打开终端,输入

cd /Users/你的用户名/Library/Android/sdk/emulator 

./emulator -list-avds

(2)、在终端中,得到模拟器名称,把它记下来。例如:Pixel_XL_API_33。随后,打开macOS自带的自动化程序,创建一个新的程序。在边栏中找到运行Shell脚本,并输入如下文本

cd /Users/你的用户名/Library/Android/sdk/emulator

./emulator -avd 你的模拟器名称

文本示例:

cd /Users/hetongchuan/Library/Android/sdk/emulator

./emulator -avd Pixel_6_API_33

(3)、保存到Application文件夹,就可以一键启动模拟器了。

4、配置快速启动

快速启动其实就是创建一个本地快照,每次都加载快照而不是重新启动安卓系统,因此可以极大地提升模拟器的启动速度。建议关闭自动创建快照,手动创建一个即可。在模拟器运行起来后,点击边栏中最后一项,找到快照即可。理论上有了快照即可进行快速启动,如果依旧没有快速启动,可以去AS的模拟器管理中进行设置。注意,快照相当于系统还原点,也就是说快照时间点后对于系统的任何更改都会失效,因此要在装完所需app,以及做好应有的设置后再创建快照。

至此,安装安卓模拟器并设置独立启动的流程便结束了。最后附上一个更改app图标的方法,用自动化软件创建的app图标实在太丑,首先随便复制一张图片,只要自己喜欢就行,其次打开app的属性,点一下左上角的图标,就会发现它的周围发光了。此时按command + v即可替换图标。如下图。

附录

1、常用命令

查找设备:

adb devices

找到下载apk的目录,安装下载好的apk:

adb -s emulator-5554 install huawei.apk

连接APP数据格式示例:

{

  "platformName": "Android",

  "appium:deviceName": "emulator-5554",

  "appium:platformVersion": "13",

  "appium:appPackage": " com.tencent.mm",

  "appium:appActivity": ".ui.LauncherUI",

  "noReset": true, # 避免每次打开都要登录

  "appium:automationName": "uiautomator2"

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值