apppium raise RemoteDisconnected(“Remote end closed connection without“)

appium+python+unittest 自动化程序

安卓手机:真机,安卓10.0

appium版本:1.23

问题描述:

  • raise RemoteDisconnected(“Remote end closed connection without”
    http.client.RemoteDisconnected: Remote end closed connection without response
  • 成功连接手机,开启appium server后,appium控制台有报错信息(远程链接报错)
  • 在终端使用adb devices 命令查看设备连接状态是正常的

原因及解决方案一:

  • 看日志[Appium] port: 4709;有可能是4709端口被占用。windows系统使用命令看下
  • netstat -ano |findstr 4709
  • taskkill -f -pid 9760
  • 然后重启启动脚本就可以了(大部分都是这个问题)
    * 在这里插入图片描述

原因及解决方案二:

  • 电池优化把appiumsetting 进程杀掉了;导致连接问题;手机设置 电池设置;

终端报错日志如下

-------win_server_ 成功--------------
appium --session-override  -p 4709 -bp 4710 -U c03fa552
[HTTP] <-- GET /wd/hub/status 200 9 ms - 68
[HTTP] 
--------start_win_server-------------
Traceback (most recent call last):
  File "E:\appium-master\appium-master\Runner\runner.py", line 104, in <module>
    run_one()
  File "E:\appium-master\appium-master\Runner\runner.py", line 95, in run_one
    appium_server.start_server()
  File "E:\appium-master\appium-master\Base\BaseAppiumServer.py", line 34, in start_server
    if self.win_is_runnnig("http://127.0.0.1:" + self.kwargs[i]["port"] + "/wd/hub" + "/status"):
  File "E:\appium-master\appium-master\Base\BaseAppiumServer.py", line 55, in win_is_runnnig
    response = urllib.request.urlopen(url, timeout=5)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 214, in urlopen
    return opener.open(url, data, timeout)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 517, in open
    response = self._open(req, data)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 534, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 494, in _call_chain
    result = func(*args)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 1375, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 1350, in do_open
    r = h.getresponse()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\http\client.py", line 1377, in getresponse
    response.begin()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\http\client.py", line 320, in begin
    version, status, reason = self._read_status()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\http\client.py", line 289, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response
[Appium] Welcome to Appium v1.22.3
[Appium] Non-default server args:
[Appium]   port: 4709
[Appium]   bootstrapPort: 4710
[Appium]   sessionOverride: true
[Appium]   udid: c03fa552
[Appium] Deprecated server args:
[Appium]   -U => --default-capabilities
[Appium] Default capabilities, which will be added to each request unless overridden by desired capabilities:
[Appium]   udid: c03fa552
[Appium] Appium REST http interface listener started on 0.0.0.0:4709```

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误通常表示客户端(即您的程序)与服务器之间的连接意外断开,而服务器没有返回任何内容或响应。这可能是由于以下一些原因导致的: 1. 服务器端发生了错误或崩溃,导致无法正常处理请求并返回响应。 2. 客户端与服务器之间的网络连接中断或出现故障,导致连接意外关闭。 3. 客户端发送的请求不符合服务器的要求或协议,导致服务器无法正常处理请求并关闭连接。 如果您遇到了这个错误,可以尝试以下几个步骤: 1. 检查服务器是否正常工作,并且能够正常处理其他请求。 2. 检查客户端与服务器之间的网络连接是否正常,并且没有出现故障。 3. 检查您的程序是否按照服务器的要求或协议发送请求,并且没有出现错误或不规范的情况。 4. 如果以上步骤都没有解决问题,您可以尝试使用其他方式(例如浏览器或其他客户端程序)发送相同的请求,以便确定问题是否出在您的程序中。 例如,以下代码演示了如何使用 `requests` 库向服务器发送 GET 请求,并处理可能出现的 `RemoteDisconnected` 错误: ```python import requests url = 'https://example.com' try: response = requests.get(url) response.raise_for_status() print(response.content) except requests.exceptions.RequestException as e: print(e) ``` 在这个示例中,我们使用 `requests` 库向 `https://example.com` 发送 GET 请求,并使用 `raise_for_status()` 方法检查是否出现了 HTTP 错误。如果出现了 `RemoteDisconnected` 错误,将会捕获该异常并输出异常信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值