0

Appium をリモート マシンで実行し、デバイスも同じリモート マシンに接続して、ローカル マシンからテスト スクリプトを実行することは可能ですか?

以下のコードは、ローカル appium サーバーを備えたローカル マシンで正常に動作していました。誰か助けてください.bcaz私はappiumが初めてです。

package com.appiumproj.test;    
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.remote.MobileCapabilityType;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.annotations.*;

public class Appium {

AppiumDriver driver;

@BeforeClass
public void setUp() throws MalformedURLException{

     //Set up desired capabilities and pass the Android app-activity and app-package to Appium

   DesiredCapabilities capabilities = new DesiredCapabilities();
   capabilities.setCapability(MobileCapabilityType.VERSION, "5.0.2");
   capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
   capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,"ZX1D62FPVQ");
   capabilities.setCapability(MobileCapabilityType.APP_PACKAGE, "com.android.calculatord");
   capabilities.setCapability(MobileCapabilityType.APP_ACTIVITY, "com.android.calculator2.Calculator"); 
   driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}

@Test
public void testCal(){


   WebElement two=driver.findElement(By.name("2"));
    two.click();
    WebElement plus=driver.findElement(By.name("+"));
    plus.click();
    WebElement four=driver.findElement(By.name("4"));
    four.click();
    WebElement equalTo=driver.findElement(By.name("="));
    equalTo.click();

    WebElement results=driver.findElement(By.className("android.widget.EditText"));

    assert results.getText().equals("6"):"Actual value is : "+results.getText()+" did not match with expected value: 6";

    System.out.println("Inside Test Function");
terClass
public void teardown(){


    driver.closeApp();
}
}
4

1 に答える 1

0

リモート マシンのポート 4723 で appium サーバーを起動します。次に、行を変更します。

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

driver = new AndroidDriver(new URL("http://IP OF THE REMOTE MACHINE :4723/wd/hub"), capabilities);
于 2015-04-13T04:25:15.250 に答える