Appium+JAVA+IDEA环境搭建

发布时间 2023-10-08 15:16:40作者: yololo

1、Java环境配置(基础,不再描述)

2、Android SDK安装

     (1)下载地址:https://www.androiddevtools.cn/#sdk-tools(下载后解压即可)

     

     (2)配置环境变量ANDROID_HOME

      

    (3)添加到Path路径(platform-tools文件夹需要SDK Manger安装后出现)

      

    (4)cmd检查配置是否成功

      

    (5)SDK Manager安装,双击SDK Manager.exe,选装工具。必装:Tools文件夹下Android SDK Platform-tools和Android SDK Build-tools,最好选择最新版本和具有代表性的版本,其中Tools下的为必装工具。

      

      

      

3、Appium安装

     (1)Appium下载,下载地址:http://aapium.io/(跳转的不对,使用:https://github.com/appium/appium-desktop/tags),选择tags,选择自己需要的版本,尽量选择一个相对稳定的版本,尽量不要选择beta版本。

      

       

 

      (2)安装包下载后直接安装

       

     (3)下载Appium Inspector,由于高版本的Appium(从1.22.0开始)的服务和元素查看器分离,所以还需要下载Appium Inspector。否则打开Appium Server GUI,点击搜索按钮会提示。

     

     (4)Appium Inspector下载地址:https://github.com/appium/appium-inspector/tags,此处下载zip。

    

    (5)解压缩后打开Appium Insperctor.exe

    

     (6)填写appium:platformName、appium:platformVersion、appium:deviceName(deviceName通过cmd输入adb devices获得)等信息。

      

     

     (7)然后点击Start Session,手机会提示安装一些uiautomator的相关插件,信任安装成功后,Appium Insperctor界面弹出手机界面,连接配置成功。

     

    (8)通过点击元素可获取定位信息

     

4、 启动app程序

      

 5、安装过程问题

      (1)双击SDK Manager.exe一闪而过,不可打开,cmd执行android.bat查看原因显示缺少JAVA_HOME,JDK环境是没有问题的,因此判断是ADK的问题,而找不到JDK。因为SDK中的一个文件(find_java.bat)r17以上版本重写了这个文件,只需要把这个文件替换成r16的版本文件即可。进入到SDK路径下的\tools\lib下面,替换find_java.bat文件即可。

       

     (2)adb devices查看手机设备,设备需打开开发者模式-USB调试。(无开发者模式的进入关于手机连续点击版本号5次)

     (3)Appium Insperctor连接手机报失败,需要修改Remote Path为/wd/hub。

      

     

     (4)点击uiautomatorviewer.bat打不开

      

      (5)查找手机Package、Activity,cmd->adb shell dumpsys activity recents | find "intent={"

     

     另一种查找手机Package、Activity,cmd->进入到android-sdk-windows\build-tools\29.0.3地址,将需要查找的apk包放入该文件中,然后输入aapt dump badging XXX.apk

     

     

    (6)uiautomatorviewer.bat双击打开闪退即jdk版本不对,jdk版本需更新为1.8版本。

    (7)uiautomatorviewer连接手机报错,无法获取手机屏幕截图,是由于uiautomatorviewer暂不支持Android 8.0以上版本。

     

    解决办法:新建一个后缀bat文件,添加以下五行信息保存(E:/app可更改为自己想保存的位置),手机端进入到想要截图页面,执行bat文件,uiautomatorviewer中选择截图的数据确定即可查看元素定位信息。

          @echo on

         adb shell uiautomator dump /sdcard/app.uix

         adb pull /sdcard/app.uix E:/app/app.uix

         adb shell screencap -p /sdcard/app.png

         adb pull /sdcard/app.png E:/app/app.png

     

     

     (8)findElement(By.)可联想出name属性去定位,运行时报错不支持,是因为appium 1.5版本之后就不支持name这个属性了。