Appium Gewenste capaciteiten voor Android Emulator [Voorbeeld]
Deze tutorial helpt u om APPIUM automation tool te begrijpen. Het behandelt de gewenste mogelijkheden en APPIUM met Maven toepassingen.
In deze tutorial leer je-
Wat zijn gewenste capaciteiten
'Gewenste mogelijkheden' helpen ons het gedrag van de server tijdens automatisering te wijzigen. In Appium, het is een type hashmap of sleutel-waardepaar, dat wordt gebruikt om een commando naar de APPIUM-server te sturen. In APPIUM worden alle clientcommando's uitgevoerd in de context van een sessie.
Een client heeft bijvoorbeeld een POST/sessieverzoek met een JSON-object naar de APPIUM-server verzonden.
Om elk gewenst verzoek te verzenden of elke gewenste sessie met de server te onderhouden, wordt daarom een set sleutel- en waardeparen gebruikt. Dit staat bekend als 'Gewenste capaciteiten.'
import io.appium.java_client.AppiumDriver; import org.openqa.selenium.remote.DesiredCapabilities; { DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName","Android Emulator"); capabilities.setCapability("platformVersion", "4.4"); }
Belangrijke rol van gewenst vermogen-
- 'DesiredCapabilities' helpen de gebruiker het sessieverzoek met de server te beheren. Als we bijvoorbeeld een iOS-sessie willen, kunnen we Capability instellen als PlatformName = iOS. Of als we dat willen Android sessie, dan kunnen we Capability instellen als PlatformName = Android.
- 'DesiredCapabilities' worden gebruikt om de Webdriver-instantie in te stellen, bijvoorbeeld: FirefoxStuurprogramma, ChromeDriver, InternetExplorerDriver enz.
- DesiredCapability is erg handig voor Selenium Grid. Bijvoorbeeld: Dit wordt gebruikt om toegang te krijgen tot verschillende testcases op een andere browser en een ander besturingssysteem. Gebaseerd op het genoemde DesiredCapability Grid, zal hub naar het corresponderende knooppunt wijzen. Hier worden deze knooppunten gedefinieerd met behulp van de 'set'-eigenschapsmethode, bijvoorbeeld:
DesiredCapabilities obj = new DesiredCapabilities(); obj.setBrowserName("firefox"); obj.setVersion("18.0.1"); obj.setPlatform(org.openqa.selenium.Platform.WINDOWS);
- Een gewenste mogelijkheid is een door een bibliotheek gedefinieerd pakket. Voordat u 'DesiredCapabilities' gebruikt, moet het worden geïmporteerd uit de onderstaande bibliotheek
Org.openqa.selenium.remote.DesiredCapabilities
APPIUM ondersteunt beide Android en iOS. Daarom zijn er een aparte set Appium servermogelijkheden.
Onderstaande tabel toont enkele veelgebruikte Android mogelijkheden en de waarde ervan voor gebruik
Mogelijkheden | Technische Beschrijving | Waarden/gebruik |
---|---|---|
appPakket | Bel gewenst Java pakket in Android dat de gebruiker wil uitvoeren | Waarde= com.voorbeeld.mijnapp/
Obj.setCapability(“appPakket”, “com.whatsapp”); |
appActiviteit | Applicatieactiviteit die de gebruiker vanuit het pakket wil starten. | Waarde= Hoofdactiviteit, .Instellingen
Obj.setCapability(“appActivity”, “com.whatsapp.Main”); |
appWachtPakket | Pakket waarop de applicatie moet wachten | Waarde=com.example.android.myapp |
appWachtActiviteit | Elke Android activiteit waarvoor de gebruiker wachttijd nodig heeft | Waarde= SplashActiviteit
mogelijkheden.setCapability ("appWaitActivity", "com.example.game.SplashActivity") |
NOTITIE– Raadpleeg deze link 'https://appium.io/docs/en/2.0/' om meer te bekijken Android Mogelijkheden
Onderstaande tabel toont enkele veelgebruikte iOS-mogelijkheden en de gebruikswaarde ervan:
Mogelijkheden | Technische Beschrijving | Waarden |
---|---|---|
LaunchTime-out | Totale tijd (in ms) die moet worden gewacht op instrumentatie. | 2000 |
U DEED | Om het unieke apparaatnummer voor het aangesloten fysieke apparaat te identificeren | 166aestu4 |
NOTITIE- Raadpleeg deze link 'https://appium.io/docs/en/2.0/guides/caps/' om meer iOS-mogelijkheden te bekijken
Informatie over pakketten en activiteiten extraheren
Pakketten zijn gerelateerd aan gebundelde bestanden of klassen. Het geeft een georganiseerde structuur aan modulair programmeren. In Java, verschillende pakketten worden opgeslagen in één enkel Jar-bestand. De gebruiker kan het jar-bestand eenvoudig aanroepen voor volledige uitvoering. Vergelijkbare concepten worden gevolgd in de wereld van mobiele applicatieontwikkeling.
In Android besturingssysteem, alle applicaties worden geïnstalleerd in de vorm van JAVA-pakketten. Om padinformatie van pakketten te extraheren, Android De klasse PackageManager wordt gebruikt.
Het haalt pakket- en activiteitsinformatie op van de voor- en post-geïnstalleerde applicatie. Het is geïnstalleerd Android toestellen.
U kunt een exemplaar van de klasse PackageManager verkrijgen door getPackageManager() aan te roepen.
Deze methode heeft toegang tot de pakketten en de bijbehorende toestemming van de geïnstalleerde applicaties en kan deze manipuleren.
Bijvoorbeeld -
PackageManager pManager = getPackageManager(); List<ApplicationInfo> list = pManager.getInstalledApplications(PackageManager.GET_META_DATA)
Samenvatting
- Desired Capability wordt altijd uitgevoerd op een sleutel-waardepaar om een opdracht naar APPIUM Server te sturen.
- Gebruik de klasse 'PackageManager' om toepassingsinformatie te extraheren Android.