introduction appium
Denne vejledning forklarer, hvad der er Appium, dets arkitektur, arbejdsgang, og hvordan man bruger dette open source-værktøj til mobil automatisering på Android og iOS:
Appium er et open source Mobile Automation-værktøj, der giver automatisering på platforme som Android, iOS osv.
Det understøtter også automatisering ved hjælp af flere programmeringssprog som Java, PHP, Perl, Python osv.Så brugerne kan bruge ethvert programmeringssprog, de er fortrolige med, og skrive automatiserede scripts.
=> Hold øje med den enkle appium-træningsserie her.
Hvad du lærer:
Hvad er appium?
Her er en videotutorial:
Oversigt over apps
Alle applikationer kan automatiseres inklusive Native, Hybrid og Web-apps.Nedenfor er en enkel oversigt over forskellige typer applikationer.
- Indfødte apps: Disse appser skrevet ved hjælp af iOS, Android eller Windows SDK'er.Disse er kun tilgængelige efter installation i enheden. For eksempel, Skype, som kun kan bruges efter installation i enheden. Vi kan ikke åbne appen via browseren.
- Web Apps: Mobile webappskan tilgås ved hjælp af en mobilbrowser.Webapps kan kun fås via browser. For eksempel, softwaretestinghelp.com kan kun fås via browseren. Vi har ikke en separat app tilgængelig til hjemmesiden.
- Hybrid Apps: Disseappshave en indpakning omkring en 'webvisning' - en indfødt kontrol, der muliggør interaktion med webindhold.Disse kan installeres i enheden såvel som tilgås via browserens URL. For eksempel, Amazon kan installeres som en separat app i enheden og kan også fås via browser som Amazon.
Endnu vigtigere er, at dette værktøj er 'platformoverskridende' - som giver dig mulighed for at skrive tests mod flere platforme (iOS, Android, Windows) ved hjælp af den samme API. Dette muliggør genbrug af kode mellem iOS-, Android- og Windows-enheder.
Arkitektur af epoker
Dette er en HTTP-server skrevet på Node.js programmeringssprog, der håndterer WebDriver-sessioner. Appium-serveren modtager HTTP-anmodninger fra klientbibliotekerne i JSON-format. Anmodningerne håndteres derefter på forskellige måder, afhængigt af hvilken platform den kører på.
Det følger klient-serverarkitekturen. Der er 3 komponenter inkluderet i den:
- appium-klient
- appium-server
- Afslut enhed
# 1) Marcus-klient
Den automatiserede scripted kode er, hvad vi kalder som Appium Client.
prims og kruskal algoritme med eksempel
Koden er scriptet på ethvert programmeringssprog som PHP, Java, Phyton osv. Dette automatiseringsscript indeholder konfigurationsoplysningerne for den mobile enhed og applikationen. Sammen med det er logikken / koden til at køre testsagerne i applikationen scriptet.
# 2) epoker server
Appium-serveren er skrevet ved hjælp af Node.js programmeringssprog.Den modtager forbindelses- og kommandoanmodninger fra Appium-klienten i JSON-format og udfører denne kommando på mobile enheder. Serveren er nødvendig for at blive installeret i maskinen og startes, før automatiseringskoden påberåbes.
Serveren interagerer med forskellige platforme såsom iOS og Android. Det opretter en session til at interagere med slutapparater i mobile apps. Det er en HTTP-server skrevet på Node.js programmeringssprog, der læser HTTP-anmodninger fra klientbibliotekerne og sender disse anmodninger til den relevante platform.
For at starte serveren skal brugerne downloade kilden eller installere den direkte fra Npm. Det giver også GUI-versionen af serveren. Du kan downloade det fra det officielle Appium websted .
I det næste kapitel vil vi diskutere GUI-versionen mere detaljeret. En af de største fordele ved dette værktøj er, at koden, du bruger til at interagere med det, er skrevet på mange sprog som Java, C #, Ruby, Python osv., Da Appium er REST API i sin kerne.
# 3) Afslut enhed
Dette er for det meste en realtids mobilenhed eller en emulator. Automatiseringsskripterne udføres i slutenheden af Appium-serveren af kommandoerne fra klienten.
WorkFlow of Appium Architecture
Appium-klienten, der indeholder konfigurationsoplysningerne og automatiseringsscriptet til testsagerne, sender kommandoerne til serveren i JSON-format. Automatiseringsscriptet konverteres til JSON-format af indbyggede jar-filer i klienten.
Appium Server genkender derefter kommandoen og opretter en forbindelse med den tilsvarende slutenhed. Når forbindelsen er oprettet, udløser den udførelsen af testsager i slutenheden. Slutenheden svarer på anmodningen i form af HTTP til Appium.
Når og når testsagerne udføres i mobilenheden / emulatoren, udfylder den loggen over alle de handlinger, der er udført i enheden / emulatoren.
Arbejde med Appium på iOS
Opret en falsk e-mail-adresse på et sekund
Dette værktøj bruger Apples UIAutomation API til at interagere med UI-elementerne i applikationen på en iOS-enhed. UIAutomation er et JavaScript-bibliotek leveret af Apple Company. Det bruger disse biblioteker til at automatisere applikationerne i iOS.
Når vi udfører testskripterne, tages kommandoerne i testskriptene i form af JSON via en HTTP-anmodning til Appium-serveren. Serveren sender kommandoen til disse instrumenter, og instrumenterne ser efter filen bootstrap.js.
Derefter udføres disse kommandoer i bootstrap.js-filen inden for iOS-instrumenternes miljø. Efter udførelsen af kommandoen sender klienten meddelelsen (succes / fiasko) tilbage til Appium-serveren med logoplysningerne for den udførte kommando.
Arbejde med Appium på Android
Appium bruger UIAutomator-rammen til at interagere med UI-elementerne i applikationen på en Android-enhed. UIAutomator er en ramme, der er udviklet af Android-udviklerne til at teste dens brugergrænseflade.
Her, i stedet for UIAutomation API, som vi så i Apple, har vi en UIAutomator / Selendroid og bootstrap.jar i stedet for bootstrap.js-filen. Det understøtter alle Android-versioner, der er større end eller lig med 17; til tidligere versioner af Android bruger Appium Selendroid-rammen.
Når vi udfører testskriptene, sender Appium kommandoen i JSON-format til UIAutomator eller Selendroid baseret på Android-versionen. Her fungerer bootstrap.jar som en TCP-server, som vi kan bruge til at sende testkommandoen til at udføre handlingen på Android-enheden ved hjælp af UIAutomator / Selendroid.
Konklusion
I dette kapitel fik vi en grundlæggende forståelse af Appium, det er arkitektur, Workflow og Working of Appium på iOS / Android.
I det næste kapitel vil vi se, hvordan du opsætter Appium og anden grundlæggende software, der skal installeres til Mobile Automation på ægte enheder.
PREV-vejledning | NÆSTE vejledning
Anbefalet læsning
- Opret appiumtest til en Android-app
- Introduktion til Appium Studio: Nøglefordele og funktioner
- Kørsel af dine appiumtests parallelt med Appium Studio til Eclipse
- Oprettelse af epoketests ved hjælp af epoker Studio for Eclipse
- Appium Studio for Eclipse: End-to-end Appium / Selenium-automatisering fra Eclipse
- Appium-vejledning til test af Android- og iOS-mobilapps
- Tilslutning af ægte iOS- og Android-enheder fra Cloud til Appium Studio
- Opret Appium Test til en iOS-app