首页 文章

通过shell脚本启动appium服务器的问题

提问于
浏览
1

我一直试图在我的RHEL盒子上用几个android设备设置appium . 安装完成后,我使用以下命令启动设备的appium实例 .

appium -U xxxxxxx -a 127.0.0.1 -p 4725 -bp 4728 --no-reset

我还有一个用于处理ui元素的Java类,我使用以下内容初始化我的Android驱动程序

DesiredCapabilities caps = new DesiredCapabilities();
    caps.setCapability("platformName", "Android");
    caps.setCapability("deviceName", "Device");
    caps.setCapability("platformVersion", "5.0");
    caps.setCapability("udid", "xxxxxxx");
    caps.setCapability("appPackage", "yyyyyyy");
    caps.setCapability("appActivity", "zzzzz");

   driver = new AndroidDriver(new URL("http://127.0.0.1:4725/wd/hub"), caps);

但是在每次运行时,初始化都会失败并显示以下内容:

[exec]    Unhandled error: Error: connect ECONNREFUSED 127.0.0.1:4728
 [exec]     at Object.exports._errnoException (util.js:874:11)
 [exec]     at exports._exceptionWithHostPort (util.js:897:20)

当我尝试使用本地telnet端口

$telnet localhost 4728

它失败了

Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host: Connection refused

是否在设备或主机上打开了引导端口 . 如果它在主机上,为什么appium服务器无法打开(或无法打开)端口?任何人都可以帮助root导致问题吗?我在初始化时做错了吗?

1 回答

  • 0

    我认为这个问题在这里:

    driver = new AndroidDriver(new URL("http://127.0.0.1:4725/wd/hub"), caps);
    

    这就是说Selenium Grid Hub正在使用4725端口,但是;

    appium -U xxxxxxx -a 127.0.0.1 -p 4725 -bp 4728 --no-reset
    

    是说端口4725用于Selenium网格节点 .

    您需要使用正确的Hub端口更正java,或者如果使用4725,则需要为Node指定新端口 .

    希望这可以帮助 .

相关问题