Ricerca…


introduzione

Esecuzione parallela in appium usando il concetto GRID del selenio. Si prega di trovare processo graduale.

Processo Step by Step

Test paralleli con Appium usando GRID: descriverò il modo in cui ha funzionato per me. Crea una griglia di selenio con Appium

  1. Imposta la griglia del selenio Scarica il contenitore del server autonomo del selenio sul file system locale Apri il tuo terminale e vai alla directory in cui hai posizionato il file jar ed esegui il seguente comando:
java -jar selenium-server-standalone-2.53.3.jar -role hub
Open http://localhost:4444/grid/console and you should be able to see GRID console in your browser.
  1. Configurazione dei nodi Appium Qui è necessario creare i file JSON. Supponiamo di voler eseguire su due dispositivi, quindi creare due file json diversi. Ecco un file json, ho come: {"capabilities": [{"applicationName": "ONEPLUS A3003", "browserName": "ONEPLUS A3003", "platformName": "ANDROID", "maxInstances": 1}] , "configuration": {"cleanUpCycle": 2000, "timeout": 30000, "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", "host": "127.0.0.1", "porta": 4723, "maxSession": 1, "register": true, "registerCycle": 5000, "hubPort": 4444, "hubHost": "il tuo indirizzo ip"}} salva il file precedente come jasonFile1.json Qui applicationName sarà - > Il tuo cellulare-> impostazioni-> sul telefono-> Numero del modello Qui hubHost sarà il tuo indirizzo IP Qui tieni presente che devi andare come posizione predefinita per il cmd, quindi eseguire sotto il comando

appium --nodeconfig C: /richa/jasonfile1.json -p 4723 -bp 4724 -U xxxx

i) Si noti che è necessario fornire il pasth assoluto del file json che si trova ii) porta come 4723 iii) Porta Bootstrap come 4724 iv) -U ad esempio ho dato come xxxx

puoi trovare l'ID del dispositivo come -> Il tuo cellulare-> impostazioni-> stato-> numero di serie Puoi anche fare "dispositivo adb" e controllare questo id dispositivo.

Quindi creerà la griglia del selenio con un dispositivo.

Ora esegui di nuovo il secondo file json e otterrai l'appium avviato Ecco il secondo file json:

{"capabilities": [{"applicationName": "Lenovo K50a40", "browserName": "Lenovo K50a40", "platformName": "ANDROID", "maxInstances": 1}], "configurazione": {"cleanUpCycle": 2000, "timeout": 30000, "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", "host": "127.0.0.1", "port": 4730, "maxSession": 1, "registro ": true," registerCycle ": 5000," hubPort ": 4444," hubHost ":" il tuo indirizzo ip "}} salva il file precedente come jasonFile2.json

Avviare il secondo nodo con Lenovo mobile. appium --nodeconfig C: / richa / jasonFile2.json -p 4730 -bp 4731 -U xxxx

La griglia di selenio sarà simile a questa

3) Creare i metodi di esecuzione paralleli TestNG per eseguire il test.

-> Si prega di notare il valore del nome del dispositivo sarà il udid che hai fornito in precedenza. Puoi ottenerlo eseguendo dispositivi adb sul tuo prompt dei comandi.

Ora crea SearchHotelTestCase.Java come di seguito: pacchetto com.trivago.TestCases;

import java.net.MalformedURLException; import java.net.URL; import java.util.concurrent.TimeUnit;

import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.remote.RemoteWebDriver; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Parameters; import org.testng.annotations.Test;

import com.trivago.pages.LocaleSelectionPage; import com.trivago.pages.SearchLocation; import com.trivago.pages.SplashScreenPage;

import io.appium.java_client.MobileElement; import io.appium.java_client.android.AndroidDriver;

public class SearchHotelTestCase {driver AndroidDriver privato;

@Parameters ({"deviceName _", "platformVersion _", "applicationName_"}) @BeforeMethod public void beforeMethod (String deviceName_, String platformVersion_, String applicationName_) genera MalformedURLException, InterruptedException {

Funzionalità DesiredCapabilities = new DesiredCapabilities (); capabilities.setCapability ("deviceName", deviceName_); capabilities.setCapability ("platformVersion", platformVersion_); capabilities.setCapability ("platformName", "Android"); capabilities.setCapability ("applicationName", applicationName_); capabilities.setCapability ("app", "/Users/richa.b.shrivastava/Downloads/com.trivago_2017-04-28.apk"); capabilities.setCapability ("appPackage", "com.trivago"); capabilities.setCapability ("appActivity", "com.trivago.activities.SplashActivity");

URL url = new URL (" http://0.0.0.0:4723/wd/hub/ "); System.out.println ("before webdriver"); driver = nuovo AndroidDriver (url, capacità); System.out.println ("after webdriver"); driver.manage (). timeouts (). implicitlyWait (10, TimeUnit.SECONDS); Thread.sleep (4000); }

@Test public void SearchHotel () {// Crea gli oggetti di Page Class LocaleSelectionPage localeSelectionPage = new LocaleSelectionPage (driver); SplashScreenPage splashScreenPage = new SplashScreenPage (driver); SearchLocation searchLocation = new SearchLocation (driver);

// Chiama i metodi della classe di pagina localeSelectionPage.selectLocale (); splashScreenPage.clickSplashSearchText (); searchLocation.inputSearchText ( "Paris"); searchLocation.selectSuggestions ("Torre Eiffel, Parigi");

}

}



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow