You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Windows远程启动Mac设备上的Appium Server?

可行方案:从Windows远程启动Mac上的Appium Server

当然可以实现,以下是几种经过验证的可行方案:

方案1:通过SSH远程执行命令

这是最直接的方式,利用Mac自带的SSH服务实现远程命令调用:

  • 先在Mac上开启SSH服务:打开「系统设置」→「通用」→「共享」,勾选「远程登录」,并设置允许访问的用户(建议限制为特定用户提升安全性)。
  • Windows端操作:
    • Windows 10/11默认内置OpenSSH客户端,直接打开终端执行命令;如果没有,可在「设置」→「应用」→「可选功能」中添加「OpenSSH客户端」。
    • 执行启动命令:
      ssh 你的Mac用户名@Mac的IP地址 "nohup appium -p 4723 &"
      
      • nohup:确保Appium在SSH会话关闭后仍能后台运行;
      • -p 4723:指定Appium监听端口,可根据需求修改;
      • &:让命令在后台执行,不阻塞当前会话。
    • 进阶优化:配置SSH免密登录,避免每次输入密码。在Windows终端执行ssh-keygen生成密钥对,将生成的公钥(默认路径C:\Users\你的用户名\.ssh\id_rsa.pub)内容复制到Mac的~/.ssh/authorized_keys文件中即可。

方案2:用Python脚本封装SSH调用

如果需要把启动逻辑嵌入到你的测试代码中,可以用paramiko库实现SSH远程执行:

import paramiko

# Mac的SSH连接信息
ssh_config = {
    "host": "Mac的IP地址",
    "username": "你的Mac用户名",
    # 优先用密钥登录,注释掉password改用key_filename
    "password": "你的Mac密码",
    # "key_filename": "C:/Users/你的用户名/.ssh/id_rsa"
}

# 建立SSH连接
ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(**ssh_config)

# 启动Appium的命令,重定向输出避免占用会话
start_cmd = "nohup appium -p 4723 > /dev/null 2>&1 &"
ssh_client.exec_command(start_cmd)

# 关闭连接
ssh_client.close()

方案3:在Mac上部署HTTP触发接口

如果希望通过HTTP请求触发启动,可在Mac上用Flask搭建一个简单的接口:

  1. 在Mac上安装Flask:pip install flask
  2. 创建并运行以下脚本:
from flask import Flask
import subprocess

app = Flask(__name__)

@app.route("/start-appium")
def trigger_start():
    # 后台启动Appium,忽略输出
    subprocess.Popen(
        ["nohup", "appium", "-p", "4723", "&"],
        stdout=subprocess.DEVNULL,
        stderr=subprocess.DEVNULL
    )
    return "Appium Server started successfully"

if __name__ == "__main__":
    # 允许外部设备访问,指定端口5000
    app.run(host="0.0.0.0", port=5000)
  1. Windows端触发:直接在浏览器访问http://Mac的IP地址:5000/start-appium,或者用Python发送GET请求:
import requests

requests.get("http://Mac的IP地址:5000/start-appium")

注意事项

  • 确保Mac和Windows处于同一局域网,若跨网访问需配置Mac的端口转发(需路由器支持);
  • 检查Mac防火墙设置,允许SSH(22端口)或自定义HTTP端口(如5000)的入站连接;
  • 若需要查看Appium日志,可修改nohup命令将日志输出到指定文件,例如:nohup appium -p 4723 > ~/appium_server.log 2>&1 &。

内容的提问来源于stack exchange,提问作者MBTester

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 18:53:30