2016-08-23 4 views
-1

Ich bin auf der Suche nach einem Rat, wie Appium Server + Android Emulator aus Code ausführen. Ein Teil des Codes, den ich verwenden möchte, befindet sich unten. Ich habe den Emulator im AVD-Manager konfiguriert und den Code ausgeführt, aber das Problem ist, dass der Android-Emulator langsam gestartet wird und die Skripts nicht darauf warten. Das bedeutet, dass ein Teil von ihnen fehlschlägt (bevor der Emulator vollständig geladen ist). Wie ist es möglich, dieses Zeug zu verwalten?Start Appium Server vor dem Test Anzug starten

ServerArguments serverArguments = new ServerArguments(); 
    serverArguments.setArgument("--address", "127.0.0.1"); 
    serverArguments.setArgument("--port", Integer.valueOf(4723)); 
    serverArguments.setArgument("--no-reset", true); 
    serverArguments.setArgument("--local-timezone", true); 
    serverArguments.setArgument("--session-override", true); 
    serverArguments.setArgument("--avd", "avdname")); 
    serverArguments.setArgument("--app-activity", "appactivity"); 
    serverArguments.setArgument("--app-pkg", "apppackage"); 
    serverArguments.setArgument("--platform-name", "Android"); 
    serverArguments.setArgument("--platform-version", Integer.valueOf(22)); 
    serverArguments.setArgument("--automation-name", "Appium"); 
    serverArguments.setArgument("--app", "pathtoapk"); 

    AppiumServer appiumServer = new AppiumServer(serverArguments); 
    appiumServer.startServer(); 

Antwort

2

Ich schlage vor, Tests Rahmen wie Junit oder TestNG verwenden. Dann haben Sie Bündel von annotations, die von Framework-Engine behandelt werden, so dass Sie in der Lage sein wird, zu betonen, welche Stufe Test, After Test durchgeführt werden sollte oder alle zusammen parallel durchgeführt werden können.

@BeforeClass 
    public void beforeClass() { 
     appiumServer.startServer(); 
    } 

    @Test 
    public void testCase1() { 
     // run test 
    } 
0

Verwenden implicitlyWait

driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 

// 60 Sekunden

// können Sie die Zeit nach der Ausführungsgeschwindigkeit

erhöhen oder verringern
Verwandte Themen