Java 如何在远程计算机上运行appium脚本?

Java 如何在远程计算机上运行appium脚本?,java,client,server,appium,selenium-grid,Java,Client,Server,Appium,Selenium Grid,我有两台台式机,其中Appium脚本保存在机器1中,Appium安装在机器2中,android设备也连接在机器2中。现在我想从机器1中获取脚本,并在机器2中连接的设备中执行它。如何做到这一点。请推荐我。 下面的代码我可以运行同一台机器。我想在android设备上运行,该设备连接到另一台机器上。两台机器的ip段是相同的段 包com.appiumproj.test; 导入io.appium.java_client.AppiumDriver; 导入io.appium.java_client.andr

我有两台台式机,其中Appium脚本保存在机器1中,Appium安装在机器2中,android设备也连接在机器2中。现在我想从机器1中获取脚本,并在机器2中连接的设备中执行它。如何做到这一点。请推荐我。 下面的代码我可以运行同一台机器。我想在android设备上运行,该设备连接到另一台机器上。两台机器的ip段是相同的段

包com.appiumproj.test; 导入io.appium.java_client.AppiumDriver; 导入io.appium.java_client.android.AndroidDriver; 导入io.appium.java_client.remote.MobileCapabilityType; 导入java.net.MalformedURLException; 导入java.net.URL; 导入org.openqa.selenium.By; 导入org.openqa.selenium.WebElement; 导入org.openqa.selenium.remote.DesiredCapabilities; 导入org.openqa.selenium.support.ui.ExpectedConditions; 导入org.openqa.selenium.support.ui.WebDriverWait; 导入org.testng.annotations.*; 公共类应用程序{ AppiumDriver司机; @课前 public void安装程序引发错误的DurException{ //设置所需功能,并将Android应用程序活动和应用程序包传递给Appium DesiredCapabilities=新的DesiredCapabilities; capabilities.setCapabilityMobileCapabilityType.VERSION,5.0.2; capabilities.setCapabilityMobileCapabilityType.PLATFORM_名称,Android; 设备名称,ZX1D62FPVQ; capabilities.setCapabilityMobileCapabilityType.APP_包,com.android.calculatord; capabilities.setCapabilityMobileCapabilityType.APP_活动,com.android.Calculator 2.Calculator; 驱动程序=新的AndroidDrivernew URLhttp://127.0.0.1:4723/wd/hub,能力; } @试验 公共无效测试卡{ WebElement 2=driver.findElementBy.name2; 二、点击; WebElement plus=driver.findElementBy.name+; plus.click; WebElement四=driver.findElementBy.name4; 四、点击; WebElement equalTo=driver.findElementBy.name=; 等。点击; WebElement results=driver.findElementBy.classNameandroid.widget.EditText; assert results.getText.equals6:实际值为:+results.getText+与预期值6不匹配; System.out.printlnInside测试功能; 三级 公共空间拆除{ driver.closeApp; } } 包com.appiumproj.test; 导入io.appium.java_client.AppiumDriver; 导入io.appium.java_client.android.AndroidDriver; 导入io.appium.java_client.remote.MobileCapabilityType; 导入java.net.MalformedURLException; 导入java.net.URL; 导入org.openqa.selenium.By; 导入org.openqa.selenium.WebElement; 导入org.openqa.selenium.remote.DesiredCapabilities; 导入org.openqa.selenium.support.ui.ExpectedConditions; 导入org.openqa.selenium.support.ui.WebDriverWait; 导入org.testng.annotations.*; 公共类应用程序{ AppiumDriver司机; @课前 public void安装程序引发错误的DurException{ //设置所需功能,并将Android应用程序活动和应用程序包传递给Appium DesiredCapabilities=新的DesiredCapabilities; capabilities.setCapabilityMobileCapabilityType.VERSION,5.0.2; capabilities.setCapabilityMobileCapabilityType.PLATFORM_名称,Android; 设备名称,ZX1D62FPVQ; capabilities.setcapabilityMobileCababilityType.APP_PACKAGE,com.android.calculatord;//这是您的应用程序的包名,您可以从apk info APP获取 capabilities.setcapabilityMobileCababilityType.APP_ACTIVITY,com.android.calculator2.Calculator;//这是应用程序的启动程序活动,您可以从apk info应用程序获得它 //创建AndroidDriver实例并连接到Appium服务器。 //它将使用所需功能中指定的配置在Android设备中启动计算器应用程序 驱动程序=新的AndroidDrivernew URLhttp://127.0.0.1:4723/wd/hub,能力; } @试验 公共无效测试卡{ //使用by.name在计算器上查找文本 WebElement 2=driver.findElementBy.name2; 二、点击; WebElement plus=driver.findElementBy.name+; plus.click; WebElement四=driver.findElementBy.name4; 四、点击; WebElement equalTo=driver.findElementBy.name=; 等。点击; //使用by.className找到计算器的编辑框 WebElement results=driver.findElementBy.classNameandroid.widget.EditText; //选中编辑框上的计算值 assert results.getText.equals6:实际值为:+results.getText+与预期值6不匹配; /* System.out.printlnInside测试功能; driver.findElementBy.partialLinkTextMore.click; driver.findElementBy.xpath//EditText[@text='Email Address']。sendKeystester@gmail.com; driver.findElementBy.xpath//LinearLayout/EditText[2].sendKeyTesterPwd; driver.findElementBy.xpath//CheckBox.click; driver.findElementBy.xpath//按钮[@text='Login']。单击; WebDriverWait wait=新的WebDriverWaitdriver,80 ; wait.untelexpectedconditions.presenceOfElementLocatedBy.xpath//Button[@text='Logout']; driver.findElementBy.xpath//按钮[@text='Logout']。单击; */ } @下课 公共空间拆除{ //关闭应用程序 driver.closeApp; }
} 提供在计算机2上运行的Appium实例的确切Ip地址。默认情况下,它是127.0.0.1,删除它并在Appium设置中显式给出它自己的IP地址。这会奏效的。如果没有,请告诉我。

我尝试使用机器2 ip地址,但收到以下错误:org.openqa.selenium.remote.UnreachableBrowserException:无法启动新会话。可能的原因是远程服务器地址无效或浏览器启动失败。