appium+python自动化63-使用Uiautomator2报错问题解决
前言
appium desktop V1.7.1版本使用命令行版本启动appium后,使用Uiautomator2定位toast信息报错:appium-uiautomator2-server-v0.3.0.apk does not exist or is not accessible
主要原因是缺少appium-uiautomator2-server-v0.3.0.apk这个apk文件
问题分析
打开cmd启动命令行版本,appium V1.7.1
使用Uiautomator2定位toast信息
from appium import webdriver
desired_caps = {
"platformName": "Android",
"deviceName": "emulator-5554", # 设备名称
"platformVersion": "5.1.1", # android系统版本号
"appPackage": "com.yipiao", # app包名
"appActivity": "com.yipiao.activity.LaunchActivity", # 启动launch Activity
"noReset": True, # 不清空数据
'automationName': 'Uiautomator2' # 使用Uiautomator2
}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)
运行代码报错信息如下:
selenium.common.exceptions.WebDriverException:Message: An unknown server-side error occurred while processing the command.
Original error: The file at path C:\Users\dell\AppData\Roaming\npm\node_modules\appium\node_modules
_appium-uiautomator2-driver@0.11.0@appium-uiautomator2-driver\uiautomator2\appium-uiautomator2-server-v0.3.0.apk
does not exist or is not accessible
分析问题原因
从报错信息看出,uiautomator2路径下找不到appium-uiautomator2-server-v0.3.0.apk这个文件,于是顺着报错给的路径查看该目录
会发现_appium-uiautomator2-driver@0.11.0@appium-uiautomator2-drive 目录(或者appium-uiautomator2-driver目录)下找不到uiautomator2这个文件
之后用appium desktop v1.2.6桌面版appium server V1.7.1却是正常的,去appium-uiautomator2-driver/uiautomator2目录可以看到有2个apk文件
(桌面版完整路径:C:\Users\dell\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-uiautomator2-driver\uiautomator2)
于是会发现命令行版本有个坑,少了这2个文件
解决问题
解决办法就是去下载到这两个文件,放到对应目录,重新启动appium就可以了,github下载地址:https://github.com/appium/appium-uiautomator2-server/releases/tag/v0.3.0
在appium-uiautomator2-driver下新建一个uiautomator2目录,把下载的2个apk放进去就可以了
桌面版完整地址:C:\Users\dell\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-uiautomator2-driver\uiautomator2
命令行版本完整地址:C:\Users\dell\AppData\Roaming\npm\node_modules\appium\node_modules\appium-uiautomator2-driver\uiautomator2
不会下载的,去QQ群:779429633 群文件下载
appium+python自动化63-使用Uiautomator2报错问题解决的更多相关文章
- appium+python自动化64-使用Uiautomator2执行driver.keyevent()方法报错解决
前言 未加'automationName': 'Uiautomator2'参数使用Uiautomator可以正常使用driver.keyevent()方法,使用Uiautomator2时driver. ...
- appium+python自动化61-中文输入乱码问题解决
前言 在夜神模拟器上输入中文,发现是乱码,将unicodeKeyboard和resetKeyboard参数设置为True了,发现还是没法解决. 打开手机设置语言和输入法,发现找不到Appium And ...
- Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP
前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...
- Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP【转载】
前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...
- Appium+python自动化8-Appium Python API
Appium+python自动化8-AppiumPython API 前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...
- Appium+python自动化15-在Mac上环境搭建
前言 mac上搭建appium+python的环境还是有点复杂的,需要准备的软件 1.nodejs 2.npm 3.cnpm 4.appium 5.pip 6.Appium-Python-Client ...
- appium+python自动化44-appium命令行模式
前言 appium desktop有个客户端版本,每次运行脚本的时候都要去双击启动才能运行,很显然不太方便,影响效率.那么有没什么办法不启动桌面程序就能运行呢,比如cmd命令行执行? 环境: appi ...
- Appium+python自动化15-在Mac上环境搭建【转载】
前言 mac上搭建appium+python的环境还是有点复杂的,需要准备的软件 1.nodejs 2.npm 3.cnpm 4.appium 5.pip 6.Appium-Python-Client ...
- Appium 【已解决】提示报错:Attempt to re-install io.appium.android.ime without first uninstalling.
详细报错:Failed to install D:\AutoTest\appium\Appium\node_modules\appium\build\unicode_ime_apk\UnicodeIM ...
随机推荐
- DNS与ARP协议
DNS(domain name system) DNS的作用:将域名(如baidu.com)转换为IP地址 DNS的本质是:分层的DNS服务器实现的分布式数据库: 根DNS服务器 - com DNS服 ...
- springboot自定义类@Resource注入为null的问题
最近用spring boot ,在controller外面即自定义的类里报错 java.lang.NullPointerException debug了下发现@Resource注入为null 查了不少 ...
- git lfs指令解决git status显示lib文件被修改,但是没有修改的问题。此时,git checkout没有用。
$ git lfs migrate import --everything --include='*.LIB'https://github.com/git-lfs/git-lfs/issues/283 ...
- Java后台使用httpclient入门HttpPost请求(form表单提交,File文件上传和传输Json数据)
一.HttpClient 简介 HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的.最新的.功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 ...
- 嵌入式02 STM32 实验09 独立/窗口看门狗
一.独立看门狗和窗口看门狗 看门狗:单片机系统在外界的干扰下会出现程序跑飞的现象导致死循环,或者崩溃,看门狗电路就是为了避免这种情况的发生,看门狗的作用就是在一定的事件内(通过计数器实现)若没有收到喂 ...
- 虚拟机CentOS克隆
1.什么是克隆 就是以某虚拟机为母版,复制出一个一模一样的虚拟机出来,包括里面的数据 2.创建克隆 正常选择通过快照创建克隆(只能是关机状态下的克隆) 1.选择关机状态下的快照,然后点击克隆 2.点击 ...
- Python之路【第十二篇】:Python面向对象高级
一.反射 1 什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的研究 ...
- golang微服务框架go-micro 入门笔记2.2 micro工具之微应用利器micro web
micro web micro 功能非常强大,本文将详细阐述micro web 命令行的功能 阅读本文前你可能需要进行如下知识储备 golang分布式微服务框架go-micro 入门笔记1:搭建go- ...
- ubuntu supervisor管理uwsgi+nginx
一.概述 superviosr是一个Linux/Unix系统上的进程监控工具,他/她upervisor是一个Python开发的通用的进程管理程序,可以管理和监控Linux上面的进程,能将一个普通的命令 ...
- stone2 [期望]
也许更好的阅读体验 \(\mathcal{Description}\) 有 \(n\) 堆石子,依次编号为 \(1, 2,\ldots , n\),其中第 \(i\) 堆有 \(a_i\) 颗石子 你 ...