APP测试之使用ADB可能遇到的错误及解决办法
Posted 软件测试小dao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了APP测试之使用ADB可能遇到的错误及解决办法相关的知识,希望对你有一定的参考价值。
错误一
在cmd中执行“adb ”,提示:adb不是内部或外部命令,也不是可运行的程序。
这意味着没有配置好adb环境。
解决办法:
1、如果是win10系统的环境变量配置打开path,
添加如下:
%android_HOME%\\tools;%ANDROID_HOME%\\platform-tools;
(注意要先点击新建再分别在两行创建,并且不需要分号)
2、如果是win7系统打开path,
添加如下:
%ANDROID_HOME%\\tools;%ANDROID_HOME%\\platform-tools;
(直接粘贴到path变量值后面即可)
具体可参照:速看,APP测试之ADB最全指南!进行工具下载及安装。
错误二
在cmd中执行“adb shell”,提示:error: device not found(没有设备信息)
意思是没有发现设备。
解决方法:
1、如果用手机设备测试,请用USB数据线与电脑连接,同时安装好手机驱动(比如91助手、豌豆荚);
2、如果采用模拟器测试,应该先启动eclipse,然后设置好模拟器,并进入模拟器测试状态,如下图所示:
错误三
执行“adb shell”,提示:error: more than one device and emulator.
第一种情况:确实用多个设备或者模拟器
错误说明是有一个以上的设备和仿真器,这是因为启用了模拟器,同时也将手机通过USB线连接到了电脑,所以这里存在两个设备。这种情况下,需要指定连接某一个设备或者模拟器。
问题定位及解决办法:
1、获取模拟器或设备列表
命令:adb devices
效果如下图所示:
2、指定device来执行adb shell
命令:adb -s devicename shell
在多个device的时候,执行adb命令一般都需要用参数-s指定device。
如卸载emulator-5554上的包com.soft.camera,命令如下:
adb -s emulator-5554 uninstall com.soft.camera
通过monkey测试:
adb -s emulator-5554 shell monkey -v -p com.tencent.WeChat 500
第二种情况:确实有一个设备或者模拟器
之所以显示有多个,是因为此设备用过两次,使用命令 adb devices 会看到这个设备有两种状:offline 和 device,有以下两种解决办法:
1、重启adb.exe服务
一般办法:在命令窗口输入 adb start-server 重新启动adb.exe服务;
2、终极方法,结束adb进程
如果上述方法不可以,终极方法:打开任务栏,选择“进程”选项卡,找到adb.exe进程,结束之,重新启动就OK啦(或者在命令窗口输入命令 adb kill-server )。
错误四
执行“adb devices”,显示设备:unauthorized(未授权).
原因:是因为在安卓端,尚未允许计算机对设备进行调试。
解决办法:
1、手动点亮手机屏幕,会有相应的授权提示,在提示上,勾选“一律允许”,并点击确定即可。
如下图所示:
2、在手机屏幕上确认之后,再次输入指令:adb devices ,即可成功连接设备,如下图所示:
错误五
在cmd中输入:adb -s HT21JV204550 shell monkey -v -p com.tencent.WeChat 500
,在手机上通过monkey测试出现:No activities found to run, monkey aborted.
意思是:没有找到要运行的activities,monkey中止。
解决措施:
1、通过模拟环境测试,Eclipse设置如下:
2、通过手机测试,应该将“Target”选项卡中由原来的“Automatic”项改为“Manual”,如下图所示:
3、然后选择“Target”选项卡的前面一个选项卡“Android”,点击下面的“Run”,执行Run后结果如下:
4、点击OK,程序会将APK写入手机,这时就可以在cmd中输入命令:adb -s HT21JV204550 shell monkey -v -p com.tencent.WeChat 500 ,通过在真实手机环境下进行测试了。
错误六
显示:adb端口被占用.
解决办法:
1、使用netstat -ano | findstr 5037查看5037端口对应的进程号(因为5037是adb的默认端口号);
2、taskkill /f /pid 进程号即可杀死,如下图所示,杀死PID为9516的进程:
最后:【可能给予你一定的帮助】
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
关注我的微信公众号【软件测试小dao】免费获取~
我的学习交流群:644956177 群里有技术大牛一起交流分享~
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
以上是关于APP测试之使用ADB可能遇到的错误及解决办法的主要内容,如果未能解决你的问题,请参考以下文章
自动化测试脚本中包含adb命令,jenkins构建时找不到adb解决办法