Appium 安装时遇到的各种奇葩问题

来源:互联网 发布:淘宝提交营业执照 编辑:程序博客网 时间:2024/04/30 23:17
1、Android SDK Manage  更新失败(或者从****路径更新失败)等遇到SDK更新不下来,可以使用如下方法来进行解决:

解决方法:
可以去【http://www.androiddevtools.cn/】 网站查找一个SDK在线更新镜像服务来进行更新



在此我使用的是 【mirror.nyist.edu.cn 端口:80】  ,双击“SDK Manager.exe” 打开“Android SDK Manage”界面,然后在Tools——Option 设置如下图所示:






此时即可下载成功,如下图所示:






第二种解决方法:

从http://www.androiddevtools.cn/  下载 对应版本的SDK,下载并解压后,将解压出的整个文件夹复制或者移动到 your sdk 路径/platforms文件夹,然后打开SDK Manager,打开 Tools(工具)菜单选择Options(选项)菜单项打开Android SDK Manager Setting对话框,点击 Clear Cache(清除缓存)按钮,然后重启Eclipse(或Android Studio)和SDK Manager。



**********************************************************************************************************************************************


问题二:
 
在安装安装提示 unable to load virtualbox engine





解决方法:
先安装 virtual box  然后还需要设置“genymotion”属性,如下图所示:




下载VirtualBox 

https://www.virtualbox.org/wiki/Downloads


翻墙地址
https://www.getlantern.org/

在打开VirtualBox 虚拟设备时报如下错误:(本人的系统为Win7)




解决方法:

右键 Oracle VM VirtualBox 选择属性,打开如下菜单,根据红框进行设置,即可打开
在兼容性选项中

勾选兼容性模式运行这个程序,下拉选择 Windows Server 2008 (Service Pack 1)

勾选以管理员身份运行此程序)



********************************************************************************************************************


问题三 :

启动安卓模拟器时报如下错误:




以上说明Genymotion在正常运行,但创建模拟手机失败,


*******************************************************************************************************************************************************************


问题四:启动appium时遇到报以下错误 


adb shell  unknown host service

其主要原因是 adb 服务起不来 其服务端口5037 被占用 ,要么是豌豆荚 、腾讯手机助手 或者是tabd.exe进程占用了该端口


、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、


问题五: 运行程序后,提示:session could not be created.

原因是程序的appPackage 和 appActivity 不正确




解决方法:
可以通过反编译被测试的app,然后查找里面的appactivity ,

解决方法二:

将贴图的两行代码 注释掉(设置 appPackage  和 appActivity)


**********************************************************


问题六  元素定位

Appium native app上的一些元素定位方法是通过UI Automator Viewer定位页面以后

元素定位工具:  ADT\sdk\tools下的【uiautomatorviewer.bat】 双击启动即可

然后点击红色图标 “Device Screenshot with Compressed Hierarchy”来获取当前模拟器或真机中当前的页面,然后从中获取到对应的
对象元素值, 它也是分为Classname, Id 、Xpath等等来进行元素定位的。  Appium 仅仅是在Selenium2 的基础上封装了一层Appium server 
方便和移动端进行交互





出现上图之后,稍等下即可打开(前提是得打开模拟器中APP软件)






*****************************************************************************************************

问题七:

Appium报Couldn’t start Appium REST http interface listener

解决方法:在任务管理器中找到node.exe*32进程,杀掉后重新启动appium,若进程中无node.exe*32进程,则找到adb.exe*32,杀掉后重启即可。





******************************************************

问题八:
如果获取App的package 和 activity 

使用appium gui 界面来进行获取,选择对应的app后即可看到,如下图所示:




问题九:
模拟器中有时安装软件时报以下错误:




Genymotion从版本2.0开始提供的虚拟设备移除了Google Apps,以及ARM library support,依靠这些组件运行的app就会出现你报的这个错误,
所以,好像、是不是、大概和你说的arm和x86没有什么关系?

ARM的程序无法安装(比如说微信) 毕竟用的是vbox虚拟机,相当于X86环境下运行的,限定ARM的程序自然是无法安装的

不过在实际操作的过程中,发现在部分模拟器环境下,将zip文件拖进去以后会报错,提示"an error occurred while deploying a file"。经过实验,用DDMS也没法手动安装zip包里的东西(要复制到system下)。个人认为原因可能在于设备没有在root的状态下,但是Genymotion应该是已经root了的啊,最后解决方法是通过re管理器之类的文件管理工具,先获得root的读写权限,然后将文件手动复制过去替换就行了(记得要重启)。其实这方法也是xda的帖子里面提到的。应该还有更简单的方法,其实就是将zip包中的system/lib下的文件都复制到设备就行了。

0 0
原创粉丝点击