【Appium踩坑】Original error: Error: connect ECONNREFUSED 127.0.0.1:8200

本文解析了Appium服务器默认禁用adbshell等shell命令的问题,介绍了如何通过在启动时添加--relaxed-security参数来启用远程Shell命令执行。同时提供了两种解决方法:避免使用adbshell相关命令或带参数启动Appium服务。
1 解决思路

(1)出现问题前,使用了以下命令 -> adb shell pm clear packagename
(2)解决参考链接
(3)问题原因:

appium服务器默认禁用 adb shell 等 shell命令,
必须在启动服务器时提供命令行参数--relaxed-security,
以启用远程Shell命令执行(以及其他不安全的功能,默认情况下已禁用)。
如果未在服务器开启时启用该参数,并且直接在客户端执行shell语句,则会引发异常。

(4)这样 解决方式 就明确了:
方法1 -> 启动 appium 服务后,不再使用 adb shell 相关命令
方法2 -> 启动 appium 服务时带参数:appium --session-override --relaxed-security

2 详细报错信息
Encountered internal error running command: 
Error: Could not proxy. 
Proxy error: Could not proxy command to remote server. 
Original error: Error: connect ECONNREFUSED 127.0.0.1:8200
### Appium报错解决方案 当使用Appium进行Android自动化测试时,可能会遇到错误提示:`Neither ANDROID_HOME nor ANDROID_SDK_ROOT environment variable exported`。这通常意味着系统无法找到Android SDK的安装路径,因为缺少必要的环境变量配置。 #### 配置ANDROID_HOME或ANDROID_SDK_ROOT环境变量 1. **确认Android SDK的安装路径** 如果已经安装了Android Studio,则Android SDK默认位于以下目录之一: - Windows: `C:\Users\<用户名>\AppData\Local\Android\Sdk` - macOS: `/Users/<用户名>/Library/Android/sdk` - Linux: `/home/<用户名>/Android/Sdk` 2. **设置环境变量** 根据操作系统,按照以下步骤设置环境变量: - **Windows**: 1. 打开“系统属性” > “高级系统设置” > “环境变量”。 2. 在“系统变量”部分,点击“新建”按钮添加 `ANDROID_HOME` 变量,并将其值设置为SDK的根目录(如 `C:\Users\<用户名>\AppData\Local\Android\Sdk`)。 3. 编辑 `Path` 变量,添加 `%ANDROID_HOME%\tools` 和 `%ANDROID_HOME%\platform-tools` 到其中[^1]。 - **macOS/Linux**: 1. 打开终端并编辑shell配置文件(例如 `.bashrc`, `.zshrc`, 或 `.bash_profile`)。 2. 添加以下内容到文件中(替换 `<SDK路径>` 为实际的SDK安装路径): ```bash export ANDROID_HOME=<SDK路径> export PATH=$PATH:$ANDROID_HOME/tools export PATH=$PATH:$ANDROID_HOME/platform-tools ``` 3. 保存文件后运行 `source ~/.bashrc`(或对应配置文件名)以应用更改[^1]。 3. **验证配置** 打开命令行工具,输入以下命令检查是否成功配置: ```bash echo $ANDROID_HOME adb version ``` 如果输出显示正确的SDK路径和ADB版本信息,则说明环境变量已正确配置[^1]。 #### 检查Appium服务器启动参数 确保在启动Appium服务器时没有指定错误的设备相关参数。如果通过命令行启动Appium,请确认使用的命令类似如下: ```bash appium --session-override ``` 此命令将避免由于重复会话导致的问题。此外,还可以尝试更新Appium及其依赖库至最新版本,以修复潜在的兼容性问题[^1]。 #### 其他可能的解决方案 - **重新安装Android SDK Tools**: 有时旧版本的SDK工具可能存在兼容性问题,可以通过Android Studio的SDK Manager更新至最新版本。 - **检查Node.js和npm版本**: 确保使用的Node.js和npm版本与当前Appium版本兼容。推荐使用较新的LTS版本。 - **使用Appium Doctor检查依赖项**: 运行 `appium-doctor` 工具来检测所有必需的依赖项是否满足条件。它能够提供详细的报告,并指出需要修正的部分。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值