Descriptive-ohjelmointi QTP/UFTDynaaminen ja staattinen

Mikรค on Descriptive ohjelmointi?

Descriptive-ohjelmointia kรคytetรครคn operaatioiden suorittamiseen AUT:ssa olevalle objektille, jonka mรครคritelmรครค ei ole tallennettu objektivarastoon. Tรคmรคn mekanismin avulla voit ohittaa tunnistuksen objektivarastosta ja toimittaa objektin Descriptioni itse lausunnossa.

Objektin nimeรค kรคytetรครคn yksinkertaisesti kuvaamaan objekti komentosarjassa sen kuvauksen kanssa objektivarastossa. Tรคmรค tarkoittaa, ettรค jos muutat objektin nimeรค komentosarjassa ja objektivarastossa, komentosarjan pitรคisi toimia. Katso seuraava video tรคstรค konseptista

Napauta tรครคltรค jos video ei ole saatavilla

Video Highlights

  • Poista objekti Description Agent Name Win Edit Box Objektivarastosta. Jos suoritat testin uudelleen, se epรคonnistuu, koska se ei tunnista objektia. Tarkastellaan syytรค, miksi komentosarja epรคonnistuu
  • Suoritusajan aikana, mikrotarkennus UFT tunnistaa WinEdit-ruudussa ja objektissa suoritettavan toiminnon DescriptObjektitietovarastossa oleva ion tallennetaan agentin nimenรค. Se kรคyttรครค tรคtรค nimeรค track objekti objektivarastossa. Ylรคobjektilla ei voi olla kahta samannimistรค aliobjektia. Siksi QTP mรครคrittรครค objektin yksilรถllisesti tietovarastossa. Se kรคyttรครค sitten tallennettua kuvausta Object Repositoryssa ja korvaa nimen kuvauksella. Tรคmรคn lauseen avulla se tunnistaa objektin testattavassa sovelluksessa.
  • Koska meidรคn tapauksessamme olimme poistaneet tรคmรคn objektin kuvauksen kokonaan, komentosarja epรคonnistuu
  • Mutta entรค jos sen sijaan QTP Kun korvaat objektikuvauksen, testaajana mรครคritรคt objektikuvaukset suoraan skriptissรคsi. Tรคmรค ei ole muuta kuin "Descriptive ohjelmointi"

Tyyppisiรค Descriptive ohjelmointi

Voit kรคyttรครค Descriptohjelmointi kahdella tavalla

  1. Staattinen
  2. Dynaaminen

Staattinen Descriptive ohjelmointi

Staattisessa menetelmรคssรค objektin tunnistamista varten mรครคritรคt objektin ominaisuuden seuraavassa muodossa

property:=values,

Tรคtรค muotoa kutsutaan ominaisuusarvopariksi ja se on suljettu kรครคnteisillรค pilkuilla

Jos esineesi kรคyttรครค useita kuvauksia tunnistamista varten, voit mรครคrittรครค ne pilkuilla

Joten meidรคn tapauksessamme Agentin nimen kuvaus tulee

"nativeclass:=Edit", "attached text:=Agent Name:"

Dynaaminen Descriptive ohjelmointi

Toinen tapa tehdรค sama toiminto on kรคyttรครค Dynamic Descriptive ohjelmointi

Jos komentosarjasi kรคyttรครค kuvaavaa ohjelmointiobjektiehdokasta useita kertoja, on erittรคin vรคsyttรคvรครค mรครคrittรครค kaikki ominaisuusarvoparit jokaiselle lauseelle

Tรคllaisissa tapauksissa voit kรคyttรครค Descriptioniluokka antamat QTP

Syntaksi kuvausobjektin luomiseen on

Set MyDescription = Description.Create();
MyDescription("property").Value = "property-value";

Tรคmรค on Dynaaminen menetelmรค

Miksi kรคyttรครค Descriptive ohjelmointi?

Video-transkripti

  • Miljoonan dollarin kysymys on, miksi kรคyttรครค DP:tรค, kun objektin tunnistusprosessia hoitaa QTP
  • Oletetaan, ettรค sinut on mรครคrรคtty testaamaan tyรถportaalia. Kirjoitat hakukyselyn portaaliin ja
  • testisi odottaa sinun valitsevan kaikki kรคytettรคvissรค olevat tyรถt .ja napsauta hakea tyรถtรค
  • Mutta heijastuvien tรถiden lukumรครคrรค riippuu hakukyselystรค ja skriptin suorittamishetkellรค kรคytettรคvissรค olevista tรถistรค, mutta ei ole mitรครคn keinoa ennustaa etukรคteen nรคkyvien tรถiden mรครคrรครค.
  • Tรคllaisissa tapauksissa voit kรคyttรครค kuvaavaa ohjelmointia. Vaikka et tiedรค valintaruutujen lukumรครคrรครค ja nimiรค, tiedรคt objektien luokan nimellรค "WebCheckBox"
  • Voit kรคyttรครค ChildObject-menetelmรค palauttaa tietylle vanhemmalle kuuluvia objekteja
  • Koodirivi, kuten -
    Set allObjects = Browser("Jobs").Page("QTP").ChildObjects()
  • Palauttaa kaikki tรคmรคn sivun aliobjektit.
  • Mutta haluamme vain WebCheckinBox esineitรค. Tรคtรค varten voimme luoda suodattimen luontiobjektin ja asettaa sen ominaisuuden webiksi -valintaruudun ja vรคlittรครค tรคmรคn suodattimen argumentiksi ChildObjects-menetelmรคlle.
  • Tรคssรค tapauksessa vain valintaruudut palautetaan.
  • Seuraavaksi voit kirjoittaa tรคllaisen koodin, joka kรคyttรครค koko valintaruutujen kokoelmaa nollasta alkaen ja asettaa kaikki valintaruudut Pร„ร„LLE.
  • Seuraavaksi voit suorittaa testin napsauttamalla Kรคytรค-painiketta
  • Voit myรถs kรคyttรครค Descriptive Ohjelmointi suorittamaan kohteita, joita on vaikea tallentaa, kuten automaattinen piilotuspaneelit, objektit muuttuvilla hierarkioilla, sisรคkkรคiset sisรคiset objektit, alivalikot.
  • Voit myรถs tehdรค edistyneitรค merkkijonokรคsittelyjรค kรคyttรคmรคllรค kuvaavaa ohjelmointia
  • Yhdessรค indeksiominaisuuden kanssa kuvaava ohjelmointi voi olla erittรคin hyรถdyllinen vaikeiden kohteiden tunnistamisessa.
  • Jos kรคytรคt ohjelmallista kuvausta objektille objektihierarkiassa, sinun on kรคytettรคvรค kuvausohjelmointia seuraaville aliobjekteille
  • Esimerkiksi sivuobjektille kรคytettiin kuvaavaa ohjelmointia, mutta seuraavalle aliobjektille kรคytetรครคn WinEdit Object Repositorya, mikรค on virheellinen
  • Pรคinvastoin, tรคssรค sekรค Page- ettรค WinEdit-ohjelmassa kรคytetรครคn kuvaavaa ohjelmointia, mikรค on oikein

Tiivistรค tรคmรค viesti seuraavasti: