Miten objektin tunnistus toimii QTP/UFT?
โก รlykรคs yhteenveto
Objektin tunnistus QTP/UFT mรครคrittรครค, miten tyรถkalu tunnistaa jokaisen graafisen kรคyttรถliittymรคn elementin testiajon aikana, vertaamalla tallennettuja testiobjektin ominaisuuksia reaaliaikaisiin ajonaikaisen objektin ominaisuuksiin, jotta skriptit toimivat edelleen, vaikka nรคytรถn asettelu muuttuisi.

Mitรค on objektin tunnistus? UFT/QTP?
Objektin tunnistaminen on mekanismi UFT/QTP kรคyttรครค nรคytรถllรค olevan graafisen kรคyttรถliittymรคn elementin tunnistamiseen, jotta komentosarja voi toimia sen perusteella luotettavasti suorituksen jรคlkeen. Tallennusistunnon aikana UFT tutkii pienen joukon ominaisuuksia hiiren osoittimen alla olevasta objektista ja tallentaa ne; toiston aikana se vertaa nรคitรค tallennettuja arvoja jokaisen todellisuudessa lรคsnรค olevan objektin ominaisuuksiin ja valitsee sen, joka vastaa yksikรคsitteisesti riippumatta siitรค, missรค objekti tรคllรค hetkellรค sijaitsee nรคytรถllรค.
Tallennettu objekti ominaisuuksineen UFT muistaa sen, sitรค kutsutaan Testaa objektiVastaava elementti, joka nรคkyy nรคytรถllรค testin suorittamisen aikana, on Ajonaikainen objektiNรคiden kahden vertailu jokaisessa vaiheessa on perusta sille, mitรค Micro Focus kutsuu Testiobjektimalli, ja siksi a UFT Skripti toimii edelleen, vaikka painike liikkuisi muutaman pikselin tai sivun tyyliรค muutettaisiin.
Objektitietovarasto ja lisรคosat
UFT pitรครค jokaisen opitun testiobjektin ja sen tallennetut ominaisuudet sisรคllรครคn Objektivarasto. Apuohjelmia kertoa Pikatesti etukรคteen, mihin teknologiaan nรคyttรถ kuuluu, jotta tyรถkalu tietรครค jo, mikรค ominaisuusjoukko on voimassa, eikรค sen tarvitse arvailla, mikรค lyhentรครค objektin oppimiseen kuluvaa aikaa.
Napauta tรครคltรค jos video ei ole saatavilla
Jokainen esine UFT tietueissa voi olla kymmeniรค ominaisuuksia. Pelkรคstรครคn verkkoympรคristรถssรค yksi painike voi nรคyttรครค sen nimen, HTML-tunnisteen, tyypin, luokan, indeksin ja paljon muuta. Kaikkien nรคiden tallentaminen jokaiselle objektille on teknisesti mahdollista, mutta harvoin hyรถdyllistรค, kuten seuraava kuva osoittaa tyypillisestรค Object Repository -merkinnรคstรค.
If UFT yritti muistaa jokaisen objektin kaikki kรคytettรคvissรค olevat ominaisuudet, objektisรคilรถn koko kasvoi ja komentosarjan suoritus hidastui huomattavasti. Tรคmรคn vรคlttรคmiseksi QTP ei tallenna kaikkia ominaisuuksia oletusarvoisesti โ se tallentaa pienen, tyypillisen joukon kullekin objektityypille, yhden valitun joukon yksilรถllinen tunniste mahdollista ilman lisรคkustannuksia. Tรคmรค ominaisuuksien lyhyt luettelo, joka pรครคtetรครคn erikseen kullekin ympรคristรถlle ja objektiluokalle, mรครคritetรครคn objektin tunnistusasetuksissa, joita kรคsitellรครคn seuraavaksi.
objekti Description: Pakolliset ja avustavat ominaisuudet
Kohteen ominaisuus ja sen arvo yhdessรค muodostavat sen, mitรค UFT kutsuu objekti Descriptioni โ tarkka yhdistelmรค, jota tyรถkalu kรคyttรครค yhden elementin valitsemiseen sivun jokaisesta muusta objektista. Esimerkiksi WebButton-painikkeelle ominaisuus nimi arvon kanssa Kirjaudu on usein itsessรครคn riittรคvรค muodostamaan kรคyttรถkelpoisen objektin Descriptioni.
Voit tarkastella tai muuttaa tรคtรค toimintaa avaamalla Tyรถkalut > Objektin tunnistus sisรคllรค UFTObjektin tunnistus -valintaikkunassa luetellaan kaikki ladatut ympรคristรถt; yhden valitseminen tรคyttรครค objektiluokat automaattisesti. UFT tukee sitรค, ja oikealla oleva paneeli nรคyttรครค tarkalleen, mitkรค ominaisuudet kyseisen luokan objekteille tallennetaan. Lista on jaettu kahteen ryhmรครคn:
- Pakolliset ominaisuudet tallennetaan oletusarvoisesti jokaiselle kyseisen luokan objektille riippumatta siitรค, tarvitaanko niitรค sen erottamiseksi naapureistaan.
- Apuominaisuudet tallennetaan vain silloin, kun pakolliset ominaisuudet yksinรครคn eivรคt pysty muodostamaan yksilรถllistรค kuvausta โ UFT kรคy tรคtรค listaa alaspรคin yksi ominaisuus kerrallaan, kunnes objektista tulee yksilรถllinen.
Verkkokuvan avulla sรครคntรถ on helpompi nรคhdรค kรคytรคnnรถssรค.
- UFT tallentaa aina verkkokuvan alt-tekstin, HTML-tunnisteen ja kuvatyypin, vaikka pelkkรค alt-teksti olisi jo yksilรถllinen.
- Jos pakolliset ominaisuudet eivรคt voi luoda yksilรถllistรค kuvausta, UFT lisรครค luokan ominaisuuden apuluettelosta.
- Kun ominaisuus tekee kuvauksesta ainutlaatuisen, UFT lopettaa uusien arvojen lisรครคmisen โ se ohittaa tiedostonimen ja korkeuden, jos luokkaa oli jo riittรคvรคsti, ohittaa korkeuden, jos tiedostonimeรค tarvittiin, ja niin edelleen.
- Oletetaan, ettรค vain luokan ominaisuus tallennetaan tallennushetkellรค. Suorituksen aikana UFT ei enรครค erottele, mitkรค ominaisuudet olivat pakollisia ja mitkรค avustavia โ se yksinkertaisesti vertaa jokaista tallennetun kuvauksen ominaisuutta suorituksenaikaiseen objektiin.
- Jos yksikin tallennettu ominaisuus ei tรคsmรครค, vaihe epรคonnistuu โ yksilรถllinen kuvaus on binรครคrinen, ei paras mahdollinen osuma.
| Aspect | Pakolliset ominaisuudet | Avustavat ominaisuudet |
|---|---|---|
| Sรคilytettรคessรค | Aina, jokaiselle kyseisen luokan objektille | Vain silloin, kun pakolliset ominaisuudet eivรคt voi muodostaa yksilรถllistรค kuvausta |
| Mรครคritetty | Objektin tunnistus -valintaikkuna, pakollinen luettelo | Objektin tunnistusvalintaikkuna, avustava luettelo |
| Kรคyttรถjรคrjestys | Opi ensin, ehdoitta | Lisรคtรครคn yksi kerrallaan, kunnes objekti on ainutlaatuinen |
| Suoritusaikainen kรคsittely | Verrattuna samoihin kuin avustaviin ominaisuuksiin | Verrattuna samoihin kuin pakolliset ominaisuudet |
Alla oleva video kรคy lรคpi tรคmรคn pakollisen ja avustavan tyรถnkulun alusta loppuun.
Objektin tunnistusikkuna Box ja Object Spy
Objektin tunnistus -valintaikkuna ei ole vain katseluikkuna โ se on paikka, jossa testaaja sรครคtรครค kuinka aggressiivisesti UFT tunnistaa koko ympรคristรถn objektit. Ominaisuuden jรคrjestรคminen uudelleen, lisรครคminen tai poistaminen tรคssรค muuttaa sitรค, mitรค kyseisen luokan jokaiselle objektille opitaan kyseisestรค pisteestรค eteenpรคin, ei vain parhaillaan tallennettavalle objektille. Tyypillinen tyรถnkulku nรคyttรครค tรคltรค:
- avoin UFT ja mene Tyรถkalut > Objektin tunnistus.
- Valitse ympรคristรถ (verkko, Windows, Javaja niin edelleen) avattavasta valikosta.
- Valitse vasemmalla olevasta luettelosta objektiluokka, kuten WebButton tai WinEdit.
- Siirrรค ominaisuuksia pakollisten ja avustavien luetteloiden vรคlillรค tai jรคrjestele avustava luettelo uudelleen hallitaksesi, mitรค ominaisuutta UFT yrittรครค ensin.
- Ota รคlykรคs tunnistus kรคyttรถรถn tai poista se kรคytรถstรค kyseisessรค luokassa paneelin ylรคreunassa olevalla valintaruudulla.
Tรคssรค tehdyt muutokset tulevat voimaan seuraavalla kerralla UFT oppii kyseisen luokan objektin โ Objektitietovarastoon jo tallennetut merkinnรคt sรคilyttรคvรคt alkuperรคisen kuvauksensa, kunnes objekti tallennetaan uudelleen tai pรคivitetรครคn manuaalisesti.
Object Spy -tyรถkalun kรคyttรถ ominaisuuksien tarkastamiseen
Ennen pakollisen tai avustavan luettelon muokkaamista useimmat testaajat tarkistavat, miltรค objektin ominaisuudet todellisuudessa nรคyttรคvรคt Object SpyKun vakoilukohdistin osoittaa mihin tahansa testattavan sovelluksen ohjausobjektiin, sekรค sen testiobjektin ettรค ajonaikaiset ominaisuudet luetellaan rinnakkain sekรค metodit. UFT voi kutsua sitรค โ hyรถdyllinen, kun pakollinen ominaisuus muuttuu jatkuvasti koontiversioiden vรคlillรค ja se on vaihdettava vakaampaan ominaisuus.
Jรคrjestysnumerotunnisteet: indeksi, sijainti ja luontiaika
Joskus jopa jokainen pakollinen ja avustava ominaisuus jรคttรครค kaksi tai useampia objekteja nรคyttรคmรครคn identtisiltรค โ esimerkiksi kolme valintaruutua, joilla on sama nimi, luokka ja otsikko. Juuri tรคssรค tilanteessa UFT putoaa takaisin johonkin jรคrjestysnumero, vara-arvo, joka luokittelee muuten identtiset objektit niiden sijainnin eikรค ominaisuuksien perusteella.
| Ordinaal Identifier | Omaisuus | Tilaus mรครคritetty | Pรคtee |
|---|---|---|---|
| indeksi | indeksi | Jรคrjestรค objekti lรคhdekoodissa alkaen nollasta | Mikรค tahansa objektiluokka |
| Sijainti | Sijainti | Ylhรครคltรค alas, sitten vasemmalta oikealle nรคytรถllรค, alkaen kohdasta 0 | Mikรค tahansa objektiluokka |
| Luomisaika | Luomisaika | Jรคrjestys, jossa selainikkuna avattiin, alkaen nollasta | Vain selainobjektit |
UFT oppii jรคrjestysnumerotunnisteen vain, kun pakolliset ja avustavat ominaisuudet eivรคt todellakaan pysty erottamaan kahta objektia, koska arvo on suhteellinen ja voi muuttua, jos sivun asettelu muuttuu, vaikka itse objekti ei muuttuisi. Alla oleva VBScript-koodinpรคtkรค kรคyttรครค Index-funktiota napsauttaakseen toista kahdesta identtisesti nimetystรค linkistรค.
Dim objBrowser, objPage Set objBrowser = Browser("title:=Guru99 Bank") Set objPage = objBrowser.Page("title:=Guru99 Bank") ' Index:=1 clicks the second Link named "Manage Order" (index starts at 0) objPage.Link("name:=Manage Order", "index:=1").Click
Indeksi- ja sijaintiarvot ovat lausekkeessa nimetylle objektiluokalle ominaisia, joten Indeksi:=3 WebEdit-elementissรค haku koskee vain WebEdit-objekteja, kun taas sama arvo yleisessรค WebElement-elementissรค lasketaan kaikkiin sivun verkko-objekteihin tyypistรค riippumatta.
Missรค รคlykรคs tunnistaminen sopii
Objektin tunnistus UFT ei pysรคhdy opittuun kuvaukseen. Kun ainutlaatuista osumaa ei lรถydy, UFT kรคy prosessin lรคpi kiinteรคssรค jรคrjestyksessรค: se ensin tarkistaa opitut pakolliset ja avustavat ominaisuudet, sitten mahdolliset visuaaliset relaatiotunnisteet ja lopuksi รlykรคs tunnistus jos kyseinen mekanismi on kรคytรถssรค luokalle, ja vain viimeisenรค keinona jรคrjestyslukutunnistetta.
รlykรคs tunnistus (Smart Identification) sijoittuu tarkoituksella opitun kuvauksen ja jรคrjestysnumerotunnisteen vรคliin. Se rakentaa ehdokaslistan uudelleen luokan ydinominaisuuksien avulla ja rajaa sitรค valinnaisilla ominaisuuksilla, joten se voi usein palauttaa objektin, jonka opittu kuvaus on rikki โ esimerkiksi uudelleennimetyn painikkeen โ koskematta koskaan objektitietovarastoon. Koska tรคmรค ylimรครคrรคinen hakuvaihe vie aikaa, useimmat tiimit ottavat sen kรคyttรถรถn tunnistusherkille luokille ja nojaavat jรคrjestysnumerotunnisteisiin vain silloin, kun sijainti on todella ainoa jรคljellรค oleva erottava tekijรค, kuten nimeรคmรคttรถmien radiopainikkeiden pankissa.


