QTP Tutorial #18-Data Driven and Hybrid Frameworks Explained with QTP Examples

we are working our working How to deriving an Automation Framework that works best for a certain testing project and also defining certain frameworks that already existed.

edellisessä QTP framework-artikkelissa käytetty esimerkki oli uuden Gmail-tilin luominen.

aluksi koodasimme uuden tiliskenaarion luomisen vain tallentamalla ja toistamalla lineaarisesti. Nähtyämme, kuinka paljon siitä puuttui modulaarisuus, luettavuus ja uudelleenkäytettävyys, hajotimme sen funktioihin, joita viitattaisiin avainsanoina eteenpäin.

=> Klikkaa tästä QTP Training Tutorials-sarja

Data Driven and Hybrid FrameworksData Driven and Hybrid Frameworks

saavutimme modulaarisuuden, luettavuuden ja uudelleenkäytettävyyden tämän menetelmän avulla, mutta meidän piti tehdä ohjelmasta entistä vankempi, jotta se voi ottaa erilaisia arvoja tarvitsematta muokata itse skriptiä.

juuri siihen pyrimme testeissä ajavalla datalla.

Data-Driven Automation Framework Using QTP

Creating multiple Google user accounts on tehtävä, jonka yritämme suorittaa käyttämällä tätä kehystä.

aiemmassa esimerkissä koodattiin kovakouraisesti etunimi, sukunimi, käyttäjätunnuksen tiedot jne. meidän koodi kun yrittää luoda tilin. Meidän on erotettava koodi datasta, jos meidän on saavutettava tämän komentosarjan data driving-aspekti.

tietojen pitäisi tulla lähteestä, joka ei ole itse ohjelma.

tyypillisesti tiedon syöttö voi olla mitä tahansa:

  • MS Excel-tiedostot
  • tietokanta
  • tekstitiedostot
  • XML-tiedostot….jne.

Excel-tiedostoja käytetään useimmin. Se, että jokainen QTP: n toiminto on integroitu omaan datalehteensä, selittää, miksi näin on.

voit käyttää yhtä tai useampaa tietolähdettä yhdelle skriptille. Toiminnon mukana tulevaa excel-taulukkoa voidaan käyttää tai voit käyttää myös ulkoista excel-taulukkoa. Pohjimmiltaan, tietolomake voi olla mikä tahansa asiaankuuluva ulkoinen tiedosto.

esimerkiksi,

tässä on koodi, jota tarvitsemme data-asemaan:

Browser("Gmail: Email from Google").Page("GoogleAccounts").WebEdit("FirstName").Set "swati"Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("LastName").Set "s"Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("GmailAddress").Set "test"

kaikki tiedot ovat nyt koodattuja. Katsotaanpa nyt, miten voimme ottaa nämä arvot datalehdestä.

Siirry QTP: n lausekkeen asiantuntijanäkymään ja klikkaa arvo-saraketta askelta varten.

seuraava ikkuna avautuu:

Data driven framework

valitse parametrivaihtoehto, valitse parametrille nimi (tämä on datalehden sarakenimi) ja valitse, käytätkö maailmanlaajuista taulukkoa vai paikallista taulukkoa (globaali arkki on saatavilla kaikille testin toiminnoille, mutta paikallinen arkki on spesifinen nykyiselle toiminnolle).

näytön” nimi ” – kentälle QTP antaa oletusarvon. Käyttäjällä on mahdollisuus pitää se samana tai muuttaa sitä.

Data driven framework

kun napsautat OK, datataulukkoon luodaan uusi sarake.

 datapohjainen viitekehys

näin näyttää datalehti, joka sisältää 3 sarjaa etunimi, sukunimi, ja tilin tunnus:

Data driven framework

kun parametrisoitu, koodi näyttää kuten alla:

Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("FirstName").Set DataTable("G_First_Name", dtGlobalSheet)Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("LastName").Set DataTable("G_Last_Name", dtGlobalSheet)Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("GmailAddress").Set DataTable("gmail_address", dtGlobalSheet)

jos meidän täytyy luoda nämä 3 käyttäjätunnukset kanssa tiedot arkki, meillä on oltava 3 iteraatioita. Iterointi on pelkkää koekäyttöä.

kun tiedot on määritetty, meidän on ohjeistettava QTP: tä siitä, kuinka monta kertaa tämä koodi on suoritettava tai kuinka monta iterointia.

näin se tehdään: Siirry tiedostoon – > Asetukset ja suorita

Data driven framework

yllä olevaan näyttöön, aseta iteraation ominaisuudet tarpeen mukaan.

vuorotellen QTP: tä voi ohjeistaa iteraatioista ohjelmallisesti. Kuten aina, tämä mahdollistaa enemmän valvontaa sekä ohjelmointitaitoja. On siis todella testaajan mukavuustasosta kiinni valita jompikumpi näistä menetelmistä.

datapohjaisen kehyksen osat ovat:

  1. Test script
  2. Data files
  3. Shared Functional library (jos se on olemassa tai voi olla lineaarinen ohjelma).
  4. Oliovarasto (tätäkään komponenttia ei ole olemassa, jos objektien luomiseen käytettiin kuvailevaa ohjelmointia).

testituloksissa näkyy ”hyväksytty” tai ”epäonnistunut” tila jokaiselta testiajolta.

oletusarvoisesti tulevan datataulukon Lisäksi voimme käyttää mitä tahansa ulkoista excel-tiedostoa syöttölehtenä.

Hybrid Framework

yllä olevassa esimerkissä käytit avainsanoja (käyttäjän luomien toimintojen nimiä) ja olet dataohjannut testin varmistaaksesi, että eri käyttäjiä luodaan samaan aikaan. Tämä on vain hybridikehys.

tähän mennessä käsittelemämme kahden tai useamman kehyksen yhdistelmä on hybridikehys. Kokemukseni mukaan mikään kehys ei toimi tehokkaasti tietyssä hankkeessa. Hybridikehys on se, mitä käytetään useimmiten.

muutamia tärkeitä kohtia kehyksistä:

  • viitekehys on vain ratkaisu, joka toimi parhaiten tietyssä tilanteessa, mutta sitä ei pidä tulkita sääntökokonaisuudeksi, jota tulee ehdottomasti noudattaa. Se pitäisi nähdä enemmän ohjenuorana.
  • käytössä saattaa olla monia muitakin kehyksiä, olemme vain listanneet ja selittäneet yhteisiä.
  • nimistö – eri henkilöt käsittelevät kehyksiään eri nimillä. Joten jos nimet ovat hieman erilaisia sovelluksesta toiseen, niin se on normaalia.
  • useimpia kehyksiä voidaan käyttää yhdessä toistensa kanssa, kun mikään niistä ei voi tarjota kokonaisvaltaista ratkaisua testaustavoitteisiisi.

Conclusion

helpoksi ymmärrykseksi olemme todella yksinkertaistaneet kehyksen käsitteitä tässä.

jos sinulla on kehykseen liittyviä kysymyksiä, joita sinulla on edessäsi, mutta joita ei ole käsitelty näissä artikkeleissa, ilmoita siitä meille. Yritämme ehdottomasti vastata kysymyksiinne. Voit vapaasti lähettää kysymyksiä.

=> Käy tutustumassa QTP: n Koulutusvideosarjaan

viimeksi päivitetty: 29. marraskuuta 2021

Leave a Reply

Sähköpostiosoitettasi ei julkaista.