经历两天对appium 百度B站简书CSDN等等大量的翻阅,今天2020-12-9 18:17 很开心,对于一个小白来说,appium环境配置实在是很不友好,所以对此记录自己的操作和分享自己的感悟。所有教程所以需要的我会放进网盘,下载即可。
链接:https://pan.baidu.com/s/1Ynn8mZKNnVTf9McINCag6g
提取码:04bq
一、appium所需环境:
1、jdk环境的配置 1.8以上即可
2 node.js 环境
3、appium-desktop的安装
4 android-sdk-windows 环境
5、模拟器的安装或者使用真机
6、一个py代码
二、安装步骤与问题解决
1、jdk环境在真就不多做细节教程,
下载jdk链接 https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
2、node.js 环境
node.js 环境也很简单,不是很关键,但是少了也太可能用不了
所以还是记录一下环境的配置
下载链接 :https://nodejs.org/zh-cn/
跟安装正常软件一样,一路安装,也可以改一下安装路径,我安装的是在E盘里
安装完后看一下环境变量里有没有如下图node环境,没有就把自己安装在哪里的路径配置一下即可
3、appium-desktop的安装
appium分两个版本,appium-desktop和appium sever ,为什么不说这个appium sever 呢,刚开始我也是这个,但是可能使用真机安卓版本太高了,可能adb不解析不到,导致后面很多东西都报错了,安卓6安卓7以上建议用appium-desktop!
听网友说appium-desktop中已经把node.js环境配置好在里头了,但是我还是安装了node.js环境防止后面使用时出现问题。
1)下载好appium-desktop后

一路向前,点击下一步安装完!
4 、 android-sdk-windows 环境
下载好android-sdk-windows压缩包解压后

如果和我的不一样,不要慌张,没得事。只要点击 SDK的exe程序,就出现这个页面

看到这么多是不是慌了,我第一次配置时,对这个也慌了,我也不知道乱下载了一堆东西。不过我翻阅了好多网上网友资料才了解真些是什么。所以我们接着说
上图,一位大神的制作的

大神做的我们只需要做个了解就好,让大家知道是做什么的下面的安装才是我们测试人员需要的
以下tools的三个必须下载

我这你安装安卓4.4.2(api 19),你们想安装4.4.2以上的都行。没关系,这三个能一定要安装,其他的安装不了不强求,但是我这里也是复制后面需要可能就装了(建议大家安装一下)装不了可以多试试

安装下面第一个必须要的,其他的安装不了不强求 最后一个是安卓模拟器加速器,安装不了莫强求(可多安装几次试试)


对android-sdk-windows 这个环境我也弄了好久,以上安装后就有了上面的目录了
2)对安装后配置系统变量环境
此环境配置在 ANDROID_HOME 路径自己的


下面这两个就添加在系统的Path 里



好了,我们可以用在cmd里验证一下 输入 adb ,出现一系列方法就说明环境变量没问题了

5、模拟器的安装或者使用真机
1)模拟器下载安装 夜神或者雷电都可以
这里演示夜神模拟器,下载链接 :https://www.yeshen.com/ 什么版本都可以
下载安装,我就演示怎么安装了吧,正常操作
安装好打开夜神安卓模拟器
>配置系统环境(老方法这里就不细说了):在Path中添加E:\nox\Nox\bin; (夜神模拟器安装的bin目录)

打开cmd 输入nox_adb.exe connect 127.0.0.1:62001 作为连接模拟器作用,再输入 adb devices ,可能出现以下问题,连接不上问题

对这个问题,1.关掉夜神模拟器。同时去任务管理器里看下,adb.exe以及nox_adb.exe这2个进程有没有在运行?有的话就结束掉。
2.找到SDK的目录,将你的sdk\platform-tools目录下的adb.exe复制出来,改名为nox_adb.exe,然后替换掉模拟器的bin目录下的同名文件!,因为夜神模拟器目录下原本的adb文件名字叫做nox_adb.exe,因此我们点替换掉nox_adb.exe。
3.重启夜神模拟器 再次在cmd 里输入nox_adb.exe connect 127.0.0.1:62001 再次输入adb devices 查看窗口

重启夜神即可,多多看看进程里有没有adb 的相关应用有就关掉 重启后夜神如果提示配置的程序关闭,不用理会关掉就好
2)连接真机测试
真机需要一个原装USB线就好,连接后开启USB调试模式,这个模式需要开启开发者模式,所查找一下自己手机怎么开启的,允许USB安装等等权限
在cmd 中输入 adb devices 查看是否有连接
如图 ,有出现就说明有连接上了。(device前面的是手机名称,不一定一样)

做了这么多,我们已经把环境准备好了
6、一个代码
接下来才是重头戏了,我们做了这么多就是为了运行appium自动化代码
代码:下面的就自己根据自己的安卓版本修改一下运行就好了 下面的代码是运行 哔哩哔哩软件爬取text
1 from appium import webdriver 2 from appium.webdriver.extensions.android.nativekey import AndroidKey 3 4 desired_caps = {} 5 desired_caps['platformName'] = 'Android' # 打开什么平台的app,固定的 > 启动安卓平台 6 desired_caps['platformVersion'] = '10' # 安卓系统的版本号:adb shell getprop ro.build.version.release 7 desired_caps['deviceName'] = 'MI 8 SE' # 手机/模拟器的型号:adb shell getprop ro.product.model 8 desired_caps['appPackage'] = 'tv.danmaku.bili' # app的名字: 9 # 安卓8.1之前:adb shell dumpsys activity | findstr "mFocusedActivity" 10 # 安卓8.1之后:adb shell dumpsys activity | findstr "mResume" 11 desired_caps['appActivity'] = '.ui.splash.SplashActivity' # 同上↑ 12 desired_caps['unicodeKeyboard'] = True # 为了支持中文 13 desired_caps['resetKeyboard'] = False # 设置成appium自带的键盘 14 desired_caps['noReset']= True # 不要重置App 15 16 # 连接Appium Server,初始化自动化环境 17 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) 18 19 # 设置缺省等待时间 20 driver.implicitly_wait(15) 21 22 # 如果有`青少年保护`界面,点击`我知道了` 23 # iknow = driver.find_elements_by_id("text3") 24 # # if iknow: 25 # # iknow.click() 26 27 # 根据id定位搜索位置框,点击 28 driver.find_element_by_id("expand_search").click() 29 30 # 根据id定位搜索输入框,点击 31 sbox = driver.find_element_by_id('search_src_text') 32 sbox.send_keys('appium环境配置') 33 # 输入回车键,确定搜索 34 driver.press_keycode(AndroidKey.ENTER) 35 36 # 选择(定位)所有视频标题 37 eles = driver.find_elements_by_id("title") 38 39 for ele in eles: 40 # 打印标题 41 print(ele.text) 42 43 input('**** Press to quit..') 44 driver.quit()
1.安装appium库 pip3 install Appium-Python-Client -i https://pypi.tuna.tsinghua.edu.cn/simple
2.在解释器软件运行以上py代码
这里我遇到了一个错误问题
command failed shell “ps ‘uiautomator’
uiautomator解决链接:https://blog.csdn.net/pjl6523853/article/details/72886048
有大佬已经解决
其实遇到挺多问题的,但是都是代码出现的问题,所以第一次尝试真的辛苦,不过能把环境搭好了已经很幸运了,下面就开始我的appium自动化测试了。。。。
资源网盘链接
链接:https://pan.baidu.com/s/1Ynn8mZKNnVTf9McINCag6g
提取码:04bq
浙公网安备 33010602011771号