win10环境 Android studio+appium app真机自动化测试

@TOC#win10环境 Android studio+appium app真机自动化测试

本人是从事Android客户端开发,一直都很想做一个自动化测试,但一直没有时间,最近清闲些,花了三天时间终于完整的做了一个demo,遇到很多坑,下面记录一下。

一.使用的环境

我是win10环境,因为我本来就有Android studio3.3的开发环境,所以只需要搭建appium环境即可,所以,需要搭建Andoid studio环境的请参考:https://blog.csdn.net/niubitianping/article/details/52523239
在这里插入图片描述
具体安装教程,参考:https://blog.csdn.net/weixin_36997520/article/details/86561185
第一步:
1… 安装node.js:https://blog.csdn.net/weixin_36997520/article/details/86561185
在获取到安装文件后,直接双击安装文件,根据程序的提示,完成node.js的安装这里插入图片描述
2.获取到安装文件后,直接双击安装文件,根据程序的提示,完成node.js的安装,
3.安装完成后,运行cmd,输入node -v,如果安装成功,会输出版本信息,如下:
在这里插入图片描述
4. 增加了 **图片拖拽** 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;

第二部:安装Appium

1.下载安装文件:https://bitbucket.org/appium/appium.app/downloads/
在这里插入图片描述
2.安装过程中出了换一个安装目录,不需要做其他修改,虽然我的是64位环境,但它默认安装在
在这里插入图片描述

3.把安装目录中node_modules的bin目录放到环境变量Path中
在这里插入图片描述
完成后,进入cmd命令行,输入appium-doctor,出现不是内部文件,这个地方纠结了很久,最后发现是找不到ANDROID HOME,这个是sdk的环境变量配置,为什么找不到呢,因为我之前说过我有Android studio环境,之前已经配置过sdk,但没有按照ANDROID HOME的方式配置,所有它找不到,所有这个比较坑了,于是我又在环境变量里配置了我的ANDROID HOME
在这里插入图片描述
这时候再进入cmd命令行,输入appium-doctor,则显示成功在这里插入图片描述

第三步:使用Android Studio创建测试脚本

1.打开Android Studio创建Android项目,如果已经有了Android项目可以不进行创建(根据实际需要)。创建完成之后New一个java library的module,如下图
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
名字随便命名,下面贴出我的项目目录结构:

在这里插入图片描述
网上说在DemoTest下的java文件夹下新建apps和libs文件夹,分别存放需要自动化测试的app.apk文件,和两个jar工具,

  1. 下载官方的测试程序:

https://github.com/appium/sample-code/blob/master/sample-code/apps/ContactManager/ContactManager.apk
Appium Java-client: 版本4.1.2,Appium的jar客户端,在as导入使用。有打包

Github地址:https://github.com/appium/java-client
在这里插入图片描述
但下载的两个jar包始终不行,主要是代码中@Test,@before,@After这些标注根本不能编译始终报错,最后看到一篇文章,直接引入才解决,这个应该是和我的Android studio版本有关系

在这里插入图片描述
上面注释掉的是之前根据jar包导入的,下面那个是网上直接导入的。

四.如何运行java程序

因为我们新建的DemoTest是一个java工程,我看网上其他文章直接选择右键即可运行,但我的比较坑,根本就没有运行这一项,当时很是抓狂,后来看到一篇文章,然后才配置好,参考:https://blog.csdn.net/alvinhuai/article/details/81288270
不能直接点击运行键,这个时候需要设置一下。然后选择application,通过配置Name,mainclass, module名称来实现运行的配置。
在这里插入图片描述
点击+号,选择Application在这里插入图片描述
现在右键应该可以看到运行了
在这里插入图片描述
在这里插入图片描述
但运行之前我们需要启动Appium,并且配置真机数据,参考:
https://blog.csdn.net/y201314an/article/details/81022556
当我把手机连上电脑,以为通过cmd 输入adb devices可以查看这个手机的设备名称(序列号)的时候,发现显示不是内部命令,郁闷,明明平时这个手机我开发的时候都可以运行啊,为什么呢?
在这里插入图片描述
方法一:

  1. android 2.2以后,adb.exe是放在SDK的platform-tools目录下面的,找到adb存放的路径,把adb绝对路径复制下来D:\ Android_Studio \ sdk \ platform-tools
    这是网上的第一种解决办法,结果坑爹的我的sdk是默认安装,虽然在Android studio中查看到它的安装路径,但我却找不到Appdata的文件夹,艰辛啊!!

在这里插入图片描述
然后又百度才发现win10中这个系统文件夹被隐藏了
在这里插入图片描述
然后才看到梦寐以求的appdata文件夹
在这里插入图片描述
网上有两种方法,一种是把上图的adb配置到环境变量path中:

注意一定要在D:\ Android_Studio \ sdk \ platform-tools \前面添加;,如果不添加;,运行ADB命令时,提示“”adb“不是内部或外部命令,也不是可运行的程序或批处理文件“,”;“分号是结束符一定要添加,D:\ Android_Studio \ sdk \ platform-tools \前面有;号不用添加了

还有一种是把
在这里插入图片描述
这三个文件复制到这个根目录下。两种情况我都做了,现在adb可以查看自己的手机设备名称了:
在这里插入图片描述
ee84ebb 这个就是设备名称,要在代码中和appium中配置这个数据,不然找不到真机,无法运行,我的手机序列号是A10ABNEX5KMK,另外可以在手机上设置,关于手机里查看手机的Android版本,我的是5.1,如下图,其他设置我都没用动
在这里插入图片描述
然后是配置appium,如下图,当然要在appium未启动之前去设置,不然设置不了
在这里插入图片描述
上面是配置apk在你电脑中的位置,下面是真机的序列号和Android版本号
然后配置appium的设置:
在这里插入图片描述
server 地址和端口号基本是默认的,不用改,你启动appium后也可以看到启动数据,就是这个地址和端口
下面两个打钩打一下,至此,所有的配置,完成,现在启动appium
在这里插入图片描述
右上角点击(刚开始启动前是启动图标,启动之后就是暂停图标了,这个不用管)
然后我们在Android studio 中启动我们的脚本,右键空白位置;
在这里插入图片描述然后神奇的一幕就发生了:就可以看到ContactManager.apk文件自动在你的手机中安装,运行,输入等一系列自动操作,终于大功告成,(备注:因为我是运行成功之后才写的这篇博客,所有,很多图片都不是自己的,而是截图的我之前参看的文章,所有如果看到项目名称,类名称不一致的勿怪,反正意思是一样的,第一次写博客,写的不好的,希望大家指正。)

猜你喜欢

转载自blog.csdn.net/u013426762/article/details/89632441