Selendroid-opetus aloittelijoille, esimerkki

Sisällysluettelo:

Anonim

Oletko koskaan kehittänyt Android-sovellusta ja julkaissut sen Google Playssa? Mitä teet, jos saat käyttäjäarvostelun, kuten -

Kun julkaiset sovelluksen Google Playssa, se on testattava hyvin mahdollisten virheiden välttämiseksi. On olemassa useita testiskenaarioita, jotka tulisi suorittaa ennen sovelluksen julkaisemista. Tarvitset testaustyökalun, jotta voit säästää testausta. Yksi parhaista testaustyökaluista Android-sovellukselle on Selendroid.

  • Mikä on Selendroid?
  • Miksi tarvitsemme Selendroidia?
  • Selendroid-arkkitehtuuri
  • Selendroidin käytön aloittaminen
  • Selendroid-ympäristön määrittäminen
  • Kuinka käynnistää Selendroid
  • Selendroid-peruskomento
  • Aloita ensimmäinen testi Selendroidilla

Mikä on Selendroid?

Selendroid on testiautomaatiokehys monityyppisille mobiilisovelluksille: natiivi ja hybridi Android-sovellus ja mobiiliverkko .

Voit kirjoittaa testit Selenium 2 -sovellusliittymien avulla. Koska Selendroid käyttää edelleen olemassa olevaa Selenium-infrastruktuuria uudelleen verkkoon

Selendroid on tehokas testaustyökalu. Sitä voidaan käyttää emulaattoreissa ja todellisissa laitteissa

Miksi tarvitsemme Selendroidia?

Selendroid on loistava testaustyökalu. Mutta voit silti epäillä sen hyödyllisyyttä.

Tässä osassa esitellään Selendroidin tärkeät ominaisuudet vastaamaan kysymykseen, miksi tarvitset Selendroidia.

  • Voit testata testattavaa sovellusta Selendroidilla ilman sovelluksen muutoksia. Tarvitset vain binaaritiedoston (APK) asennettuna tietokoneelle. Binaaritiedoston asentamiseksi laitteeseen testisovellus ja mobiilisovellus on allekirjoitettava samalla allekirjoitusavaimella
  • Selendroid-testisovellus voi olla vuorovaikutuksessa useiden laitteiden tai simulaattorien kanssa samanaikaisesti. Se on Selendroidin suuri etu. Joten voit testata sovellustasi eri Android-laitteilla yhteensopivuuden tarkistamiseksi.
  • Selendroid voi simuloida ihmisen ja käyttäjän toimia sovelluksessa, kuten koskettaa, pyyhkäistä, vetää ja pudottaa laitteilla
  • Voit vaihtaa laitteita (kytke ja irrota) testauksen aikana käynnistämättä testiä uudelleen. Selendroid tunnistaa uudet laitteet automaattisesti
  • Selendroid tukee Android-sovellusliittymän versiota ylöspäin myös uutta Android-sovellusliittymää (API 10: stä API 19: een)
  • Selendroidilla on myös sisäänrakennettu tarkastustyökalu, jonka avulla voit tunnistaa testattavan sovelluksen käyttöliittymäelementin. Esimerkiksi ID-painike, tekstikenttä, tekstinäkymä…

Selendroid-arkkitehtuuri

Selendroid perustuu Android-instrumentointikehykseen. Selendroid-testit perustuvat Selenium Web -ohjaimen asiakasrajapintaan, joten se tukee täydellistä integrointia nykyisiin Selenium-kehyksiin.

Seuraava kuva kuvaa Selendroidin arkkitehtuuria

Selendroid sisältää 4 pääkomponenttia:

  • Web Driver Client - Java-asiakaskirjasto, joka perustuu Seleniumiin. Tämä kirjasto tulisi asentaa tietokoneelle (jota käytetään testitapausten kehittämiseen)
  • Selendroid-Server - Suoritettava palvelin on testattavassa sovelluksessa Android-laitteella tai simulaattorilla. Tämä on Selendroid-arkkitehtuurin pääosat
  • Android Driver-App - Sisäänrakennettu Android-ohjain, Web View -sovellus mobiiliverkon testaamiseen.
  • Selendroid-Standalone - Tätä komponenttia käytetään Selendroid-palvelimen ja testattavan sovelluksen (AUT) asentamiseen

Selendroidin käytön aloittaminen

Olet jo tiennyt Selendroidin tärkeyden. Likaistaan ​​nyt kätemme Selendroidin kanssa.

Ennen ensimmäistä testiä Selendroidilla on tehtävä 3 vaihetta

Selendroid-ympäristön määrittäminen

Selendroid voi toimia Window-, Linux- ja Mac OS -käyttöjärjestelmissä. Tässä opetusohjelmassa asennamme Selendroidin Windows-käyttöjärjestelmään.

Ennen Selendroidin käyttöä sinun on ensin asennettava seuraava paketti

  • Java SDK (vähintään 1.6)

    Sinun on hyväksyttävä lisenssisopimus ja ladattava java-asennusohjelma (valitse käyttöjärjestelmäsi x64- tai x86-pohja)

    Lataa ja asenna Java SDK normaalina ohjelmistona

  • Uusin versio Android SDK: sta
  • Tietokoneessasi on oltava vähintään yksi Android-virtuaalilaite (AVD) tai todellinen Android-laite kytkettynä tietokoneeseen.
  • Selendroid Standalone riippuvuuksilla, Selendroid Client ja Selenium Client
  • Eclipse-ohjelmisto
  • Määritä JAVA_HOME ja ANDROID_HOME

    Vaihe 1) Napsauta ikkunassa hiiren kakkospainikkeella Tietokone -> Ominaisuudet -> Järjestelmän lisäasetukset

    Vaihe 2) Järjestelmän ominaisuudet -ikkunanäyttö, valitse välilehti Lisäasetukset -> Ympäristömuuttujat

    Vaihe 3) Ympäristö-ikkunan näyttö, napsauta Uusi -> Anna muuttuja ANDROID_HOME seuraavasti

    Muuttujan arvo on polku jo asentamallesi android-sdks: lle.

    Etsi järjestelmämuuttuja Polku -> Muokkaa -> Lisää seuraava rivi nykyisen rivin jälkeen

    Lisää kuten ANDROID_HOME, lisää uusi muuttuja JAVA_HOME alla olevan arvon kanssa

    Arvo on polku Java JDK -asennuksellesi

    Vaihe 4) Käynnistä tietokone uudelleen -> Valmis

Kuinka käynnistää Selendroid

Vaihe 1) Testattavan sovelluksen saaminen

Voit tarkistaa olemassa olevan Selendroid-testisovelluksen avulla, että Selendroid toimii (Linkki testattavaan näytesovellukseen)

Kun lataus on valmis, kopioi tämä APK ja yllä oleva Selendroid Standalone -purkkitiedosto kansioon nimeltä " Guru99"

Vaihe 2) Käynnistä Selendroid

Avaa pääte Windowsissa ja siirry vaiheessa 1 luotuun kansioon Guru99.

Suorita seuraava komento

Lähtö näkyy seuraavasti

Tämän komennon suorittamisen jälkeen Selendroid-standalone HTTP-palvelin käynnistyy! Tämän palvelimen oletusporttinumero on 4444. Kaikki laitteistot ja Android-virtuaalilaite skannataan ja tunnistetaan automaattisesti. Selendroid tunnistaa Android-kohdeversion ja laitteen näytön koon.

Voit tarkistaa Android-kohdeversion ja laitetiedot avaamalla seuraavan URL-osoitteen selaimessa:

http: // localhost: 4444 / wd / hub / status.

Selendroid-peruskomento

Tässä osassa esitellään joitain Selendroid-Standalone-komentokomentoja. Voit käyttää niitä Selendroid-testausympäristön määrittämiseen

  1. Selendroidin portin asettaminen

    Selendroidin oletusportti on 4444. Mutta voit vaihtaa toiseen porttiin lisäämällä parametrin komentoon Selendroidin käynnistämiseksi

    Parametri: -port [portin numero]

    Esimerkiksi:

    Yllä olevassa komennossa 5555 on uusi portti.

Joten URL-osoite, jolla tarkistetaan Android-kohdeversio, muutetaan seuraavaksi: http: // localhost: 5555 / wd / hub / status

  1. Määritä testattavan sovelluksen sijainti (Binary APK -tiedosto). Selendroid vaati usein tämän tiedoston absoluuttista polkua

    Parametri: -app [tiedostopolku]

    Esimerkiksi:

    Edellä olevassa komennossa Selendroid löytää automaattisesti "C: \ Guru99App.apk" -binaaritiedostopohjan saadakseen testattavan sovelluksen tiedot.

    Tarkista URL-osoite http: // localhost: 4444 / wd / hub / status, näet nämä tiedot

  2. Muuta porttia, jota Selendroid käyttää yhteydenpitoon instrumentointipalvelimen kanssa. Selendroid käyttää oletusasetuksena porttia 8080

    Parametri: -selendroidServerPort [portin numero]

    Esimerkki

    Satama on nyt muutettu 9000: ksi

  3. Muuta aikakatkaisua käynnistääksesi emulaattorit. Yksikkö on millisekuntia.

    Parametri: -timeoutEmulatorStart

    Oletuksena Selendroid odottaa 300 000 millisekuntia, kunnes emulaattori käynnistyy. Voit vaihtaa uuteen aikakatkaisuun (200 000 ms) komennolla

    Tämän ajan kuluttua vanhentuneemme, jos emulaattori ei voi käynnistyä, Selendroid heittää poikkeusvirheen (tapahtui virhe laitteita / emulaattoreita etsittäessä.)

  4. Kun käynnistät Selendroid-komennon päätelaitteessa, näet ruudulle tulostetun lokin. Voit muuttaa lokin tyyppiä lisäämällä seuraavan parametrin

    Parametri: -logLevel [lokityyppi]

    Lokitason arvot ovat ERROR, WARNING, INFO, DEBUG ja VERBOSE. Oletus: ERROR.

    Aseta esimerkiksi Selendroid tulostamaan vain VAROITUS-loki, voit käyttää tätä komentoa

    Selendroid tulostaa vain VAROITUS-lokin

Aloita ensimmäinen testi Selendroidilla

Tämä osio on vaiheittainen opas ensimmäisen testikoodin luomiseen Selendroidin avulla

Oletetaan, että meillä on Android-sovellus testinimellä Guru99App. Sovellus sisältää tekstikentän ja painikkeen nimen "Näytä teksti".

LATAA APK TÄTÄ

Meidän on suoritettava seuraava testitapa käyttämällä Selendroidia

Testitapaukset

Kunto

Odotettu tuotos:

  1. Käynnistä sovellus
  2. Kirjoita teksti " Guru99-testi " tekstikenttään
  3. Paina "Näytä teksti" -painiketta

Testattavan sovelluksen binääri on käytettävissä

Laite on kytketty tietokoneeseen

Teksti "Näytä tässä" muutetaan tekstiksi

jonka käyttäjä kirjoittaa tekstikenttään

Vaihe 1) Luo Java-projekti Eclipseen

Vaihe 2) Lisää seleeni- ja Selendroid-purkitiedosto eclipse-ympäristöihin

Hiiren kakkospainikkeella Guru99Test Project -> Build Path -> Add External Arkisto

Siirry kansioon, joka on tallentanut purkitiedostot

3 purkitiedostoa tulisi lisätä

  • selendroid-client-0.10.0.jar: Selendroid java -asiakaskirjasto
  • selendroid-standalone-0.11.0-with-dependencies: Selendroidin erillinen palvelinkirjasto
  • selenium-java-2.40.0.jar: Selenium Web Driver -kirjasto

Valitse kaikki -> Valitse Avaa, jos haluat lisätä purkitiedoston projektiin

Vaihe 3) yllä olevan kirjaston lisäämisen jälkeen nämä kirjastot lisätään testiprojektin viitekirjastoihin. Testaaja voi käyttää kyseisten kirjastojen sovellusliittymiä testausohjelman kehittämiseen

Luo paketti "com.guru.test" ja lisää java-tiedosto "Guru99Test.java" kuten alla

Napsauta hiiren kakkospainikkeella Guru99Test -> Uusi -> Paketti

Kirjoita com.guru.test Nimi-kenttään Uusi Java-paketti -valintaikkunassa à Finish

Eclipse luo tällaiset luettelokansiot ja alikansiot lähdekoodirakenteeseen

Vaihe 4) Asenna TestNG for Eclipse

Napsauta Eclipse-ohjeen Ohje -> Asenna uusi ohjelmisto Asennus-valintaikkunassa Lisää ja kirjoita seuraava

  • Nimi: TestNG
  • Sijainti: http://selendroid.io/

Asenna TestNG painamalla OK -> Seuraava

Vaihe 5) Kopioi Guru99App.apk Test App -kansioon

Vaihe 6) Hanki testattavan sovelluksen tunnus.

Oletetaan, että meillä on APK-tiedoston nimi Guru99App.apk. Noudata edellisessä osassa kuvattua vaihetta, suorita komento päätelaitteessa

Avaa seuraava linkki selaimessa

http: // localhost: 4444 / wd / hub / status.

Laitteen tiedot näytetään, kopioi appId-arvo "com.guru99app: 1.0"

Vaihe 7) Avaa tiedosto Guru99Test.java (mallikoodissa) ja vaihda seuraavasti

Jos haluat luoda uuden testiistunnon Selendroidin kanssa, sinun on annettava sovellustunnus muodossa: com.guru99app: 1.0. Tämä sovellustunnus tunnistetaan vaiheessa 6. Jos et määritä sovellustunnusta vastaamaan Android-laitetta, testiistunto heittää virheen eikä käynnisty.

Löydetyn laitteen alustamisen jälkeen Selendroid luo mukautetun selendroid-palvelimen ja asentaa siihen Selendroid-palvelimen

Selendroid asentaa myös testattavan sovelluksen ja käynnistää selendroid-palvelimen laitteeseen

Kun testiistunto on alustettu onnistuneesti, testikomento käynnistetään laitteessa. (Jos esimerkiksi syötät tekstiä, paina painiketta

…). Jos testi liittyy testiistuntoon, emulaattori pysähtyy automaattisesti

Vaihe 8) Aloita uusi testiistunto

Käynnistä Selendroid-palvelin käyttämällä komentoa terminaalissa kuten vaihe 6

Kun Selendroid Server on käynnistynyt, avaa testiprojekti Guru99test Eclipse -ohjelmassa, aseta katkaisupiste riville 77 tiedostossa Guru99Test.java kaksoisnapsauttamalla riviä 77 -> Piste näkyy kuten alla

Aloita testiistunto napsauttamalla hiiren oikealla painikkeella Guru99Test-projektia -> Debug As -> Testng Test.

Testiistunto alkaa kuten alla

Vaihe 9) Hanki testattavan sovelluksen GUI-elementin tunnus

Kun testiistunto on aloitettu onnistuneesti, avaa selain ja siirry URL-osoitteeseen http: // localhost: 4444 / inspector

Näet, että testattava sovellus käynnistetään kuten alla

Käytä hiirtä osoittamalla AUT: n jokaisen käyttöliittymäelementin kohdalle (painike, tekstikenttä, tekstitarra), kunkin elementin tunnus korostetaan oikeassa ruudussa

Tämän vaiheen jälkeen voit saada kunkin yllä olevan käyttöliittymäelementin tunnuksen

  • Painike Näytä tekstitunnus : " btnShow "
  • Tekstikentän tunnus: " edtText "
  • Tunnistetekstin tunnus: " txtView "

Näitä tunnuksia käytetään seuraavassa vaiheessa

Vaihe 10) Anna testiohjelma kuten alla

Selendroidia käyttävä testiohjelma sisältää 3 osiota

Asennustesti:

Seuraava on asennustestin koodi, se asettaa ehdon testiistunnolle.Virheen sattuessa Selendroid heittää poikkeuksen ja testisovellus pysähtyy.

Koodi sisältää kommentit jokaisen lausunnon selittämiseksi.

paketti com.guru.test;tuo io.selendroid.SelendroidCapabilities;tuo io.selendroid.SelendroidConfiguration;tuo io.selendroid.SelendroidDriver;tuoda io.selendroid.SelendroidLauncher;tuo io.selendroid.device.DeviceTargetPlatform;tuo org.openqa.selenium.By;tuo org.openqa.selenium.WebDriver;tuonti org.openqa.selenium.WebElement;tuo org.testng.Assert;tuo org.testng.annotations.AfterSuite;tuo org.testng.annotations.BeforeSuite;tuo org.testng.annotations.Test;/ *** @author Guru99 -testiohjelma käyttämällä Selendroidia* Testattava sovellus: Guru99App** /julkinenluokka Guru99Test {// Ilmoita web-ohjaimen muuttujayksityinen WebDriver-ohjain;/ *** Asenna ympäristö ennen testausta* @throws Poikkeus* /@BeforeSuitejulkinenvoid setUp () heittää poikkeuksen {// Käynnistä selendroid-standalone testin aikanaSelendroidConfiguration config = uusi SelendroidConfiguration ();// Lisää selendroid-test-sovellus erilliseen palvelimeenconfig.addSupportedApp ("Guru99App.apk");// Käynnistä erillinen palvelinSelendroidLauncher selendroidServer = uusi SelendroidLauncher (config);selendroidServer.launchSelendroid ();// Luo selendroid-ominaisuudetSelendroidCapilities capa = uusi SelendroidCapilities ();// Määritä käyttämään selendroidin testisovellustacapa.setAut ("com.guru99app: 1.0");// Määritä käyttämään Android-laitteen sovellusliittymää 19capa.setPlatformVersion (DeviceTargetPlatform.ANDROID19);// Älä pyydä simulaattoria, käytä todellista laitettacapa.setEmulator (väärä);//capa.odota(10000000);// Luo Selendroid-ohjaimen ilmentymäohjain = uusi SelendroidDriver (capa);}

Suorita testi

Alla on koodi testin suorittamiseen. Koodi sisältää kommentit

Tässä ovat testivaiheet uudelleen

  1. Kirjoita teksti "Hei Guru"
  2. Napsauta Näytä teksti -painiketta
  3. Odota hetki
  4. Varmista, että sovellus näyttää tekstin käyttäjän syöttäessä tekstikenttään (Esim. Näytä teksti "Hei Guru")
 / *** Aloita testitapauksen suorittaminen* 01. Kirjoita teksti "Selendroid" tekstikenttään* 02. Paina OK-painiketta* @throws Poikkeus* /@Testatajulkinenvoid selendroidTest () heittää poikkeuksen {// Tulosta lokiSystem.out.print ("Aloita testin suorittaminen");// Etsi syötettävä tekstikenttä näytöltä// Tämän tekstikentän tunnus oli hankittu vaiheesta 9WebElement inputField = driver.findElement (By.id ("edtText"));// Varmista, että tekstikenttä on käytössä, jotta käyttäjä voi kirjoittaa tekstiäAssert.assertEquals ("true", inputField.getAttribute ("käytössä"));// Kirjoita teksti tekstikenttääninputField.sendKeys ("Hei Guru");// napsauta Näytä teksti -painiketta// Tämän painikkeen tunnus oli hankittu vaiheesta 9WebElement-painike = driver.findElement (By.id ("btnShow"));button.click ();// Viivästys voimaantuloonLanka. Unessa (5000);// Etsi näytöltä teksti "Show Show Here"// Tämän tarran tunnus oli hankittu vaiheesta 9WebElement txtView = driver.findElement (By.id ("txtView"));// Hae tekstinäyttö ruudulleMerkkijono odotettavissa = txtView.getText ();// Varmista, että teksti, jonka käyttäjä syöttää tekstikenttään, on sama kuin tekstinäyttö näytölläAssert.assertEquals (odotettavissa, inputField.getText ());}

Viimeistele testi

Seuraava koodi suorittaa testin pysäyttämällä Selendroid-ohjaimen.

 / *** Pysäytä Selendroid-ohjain** /@AfterSuitejulkinenvoid tearDown () {kuljettaja. lopeta ();}

Näet yksityiskohdat tämän artikkelin mallikoodissa.

Vaihe 10) Liitä Android-laite tietokoneeseen USB-kaapelilla. Huomioitavat kohdat -

  • Varmista, että laitteessa ei ole määritetty näytön lukitusta.
  • Laitteet on kytkettävä USB: n kautta tietokoneeseen, jossa selendroid-standalone-komponentti on käynnissä.
  • Laitteen tulisi asentaa vähintään Android Target Version API 10

Vaihe 11) Suorita testisovellus: Napsauta hiiren kakkospainikkeella Guru99test -> Run as -> TestNG test

Vaihe 10) Komentosarja käynnistetään seuraavasti

Vaihe 12) Kun testi on suoritettu loppuun, TestNG luo testiraportin seuraavasti

Hyvä työ, olet tehnyt testin nyt.

Yhteenveto

Yhteenveto

  • Selendroid on erittäin tehokas työkalu Android-natiivisovelluksen, hybridisovelluksen ja verkkosovelluksen testaamiseen.
  • Sitä voidaan käyttää sekä todellisissa laitteissa että simulaattorissa.
  • Sen avulla voit suorittaa testit samanaikaisesti suorittamalla testin useilla laitteilla.
  • Koko Selendroid-paketti koostuu neljästä osasta:
    • Web-ohjainohjelma,
    • Selendroid-palvelin,
    • Android-ohjainsovellus
    • Selendroid-erillinen
  • Selendroidin käyttämiseen tarvitaan Java JDK, Android SDK ja Eclipse.