Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Parallel usage results in a "socket hang up" error. systemPort have set but still have the problem.

未关闭
#903 7 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
25/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
技术栈
android, python
领域
mobile, testing

调研方向

首先使用两个 Android 设备复现双线程测试,并使用所示的 webdriver.Remote 端点和不同的 systemPort 值。检查 Appium 服务器输出和会话创建错误,以确定为什么其中一个会话报告 socket hang up;当两个会话并行执行 tap 并成功退出时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

NeedsInfo

Here's my code:

python

from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
import threading

Device 1's configuration

desired_caps1 = {
"appium:appActivity": ".Settings",
"appium:appPackage": "com.android.settings",
"appium:automationName": "uiautomator2",
"appium:udid": "xxxx",
"platformName": "Android",
"appium:systemPort": 8310
}

Device 2's configuration

desired_caps2 = {
"appium:appActivity": ".Settings",
"appium:appPackage": "com.android.settings",
"appium:automationName": "uiautomator2",
"appium:udid": "192.168.137.58:5555",
"platformName": "Android",
"appium:systemPort": 8322
}

def run_test_on_device(desired_caps):
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # Corrected URL

width = driver.get_window_size()["width"]
height = driver.get_window_size()["height"]

action = TouchAction(driver)
action.tap(x=width // 2, y=height // 2).perform()

driver.quit()

Use threading for parallel execution

thread1 = threading.Thread(target=run_test_on_device, args=(desired_caps1,))
thread2 = threading.Thread(target=run_test_on_device, args=(desired_caps2,))

thread1.start()
thread2.start()

thread1.join()
thread2.join()

I have set the different systemPort for each devices, but I still have the problem.

How can I sove that, I'm very need to be solved, thanks.

主要语言
Python
星标
1.8k
派生
570
平均合并
1 天 10 小时
30 天内合并 PR
24

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

appium/python-client 的其他 Issue

查看 appium/python-client 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。