Depozit de obiecte locale și partajate în QTP/UFT

⚡ Rezumat inteligent

Depozitul de obiecte în QTP/UFT Unul stochează obiectele de testare și proprietățile pe care instrumentul le folosește pentru a recunoaște aplicația și se prezintă sub două forme: un depozit local per acțiune și un depozit partajat reutilizabil.

  • 🔘 Modelul obiectului de testare: QTP învață proprietățile obiectului în timpul înregistrării și le compară cu obiectul din timpul execuției în timpul redării.
  • ☑️ Local în mod implicit: Fiecare acțiune începe cu propriul depozit local, salvat ca ObjectRepository.bdb în folderul acțiunilor.
  • ✅ Scalarea depozitelor partajate: Un fișier .tsr se află în afara testului și poate fi asociat cu numeroase acțiuni în cadrul mai multor teste.
  • 🧪 Trei etape generale: Creați repozitoriul, asociați-l cu acțiunile dvs., apoi editați-l prin intermediul Object Repository Manager.
  • 🛠️ Protecție doar pentru citire: Un depozit partajat se deschide doar în citire în Manager până când se selectează Fișier > Activare editare.
  • 📌 Denumire actuală: QTP este acum OpenText Testare funcțională (UFT Unu), dar meniurile și formatele de fișiere ale repozitoriului sunt neschimbate.

Structura depozitului de obiecte local și partajat în QTP și UFT O

Ce este un depozit de obiecte în QTP?

Depozit de obiecte este o colecție de obiecte de testare și informații recunoscute de QTP pentru lucrul la acesta. Când un utilizator înregistrează un test, obiectele și proprietățile acestora sunt capturate în mod implicit.

Deoarece fiecare pas pe care îl automatizați trebuie să indice către un obiect stocat, depozitul este stratul care decide dacă un script continuă să ruleze după modificarea aplicației. Înțelegerea modului în care obiectele ajung acolo este primordială.

Cum funcționează identificarea obiectelor în QTP?

  • QTP folosește o tehnologie asemănătoare „umană” pentru identificarea obiectului
  • În timpul Record timp, QTP încearcă să învețe proprietățile unui obiect GUI asupra căruia se efectuează o operație.
  • În timpul execuției, UFT Se compară proprietățile obiectului stocat cu proprietățile reale ale obiectului disponibile pe ecran și se identifică în mod unic un obiect independent de locația sa pe ecran.
  • Obiectul stocat, împreună cu proprietățile sale, se numește Obiect de testare
  • În timpul rulării, obiectul disponibil în aplicația testată se numește Obiect de rulare
  • Aceasta este Test rapid „Testează modelul obiectului”
  • Informațiile despre obiectele de testare sunt stocate în depozitul de obiecte
  • Add-in-urile ajută prin instruirea în avans a QuickTest cu privire la natura obiectului care urmează să fie înregistrat, astfel încât să reducă timpul necesar pentru învățarea proprietăților acestuia.

Aflați Identificarea obiectelor cu un exemplu din următorul videoclip

Clic aici dacă videoclipul nu este accesibil

Tipuri de depozit de obiecte

Există 2 tipuri de repozitoriu de obiecte în QTP

  1. Depozit de obiecte locale
  2. Depozit de obiecte partajate

Cele două diferă într-un singur aspect: cine deține obiectele. Depozitul local aparține unei singure acțiuni, în timp ce depozitul partajat este un fișier independent pe care orice acțiune îl poate împrumuta.

Depozit de obiecte locale

  • Local Object Repository este depozitul implicit de obiecte
  • Este specific acțiunilor și poate fi folosit doar pentru o anumită acțiune
  • Depozitul local de obiecte este preferabil atunci când aplicația nu este dinamică în timp.
  • Depozitul de obiecte local nu poate fi reutilizat
  • Puteți efectua numeroase operațiuni în depozitul de obiecte local, cum ar fi:
    • Evidențiați un obiect stocat într-un depozit în aplicația testată
    • Verificați dacă un anumit obiect din AUT este stocat în depozitul de obiecte
    • Tăiați, copiați, lipiți, modificați și ștergeți obiecte
    • În cazul în care ați modificat accidental valoarea unei proprietăți, puteți actualiza descrierea acesteia din aplicație folosind funcția de actualizare.

Videoclipul de mai jos demonstrează lucrul cu depozitul de obiecte local.

Arhivă de obiecte partajate: Creați, Asociați, Editați

  • Depozitul global sau partajat de obiecte este preferabil atunci când o aplicație este dinamică și descrierile obiectelor se schimbă frecvent
  • Între depozitul de obiecte partajat și cel local, depozitul de obiecte partajat este mai frecvent utilizat în proiectele de automatizare.
  • Cu toate acestea, are costuri generale de întreținere și administrare în comparație cu depozitul local de obiecte.

Pentru a crea și utiliza un depozit de obiecte partajat, trebuie să efectuați trei pași mari

  • Crearea unui depozit de obiecte partajate
  • Asocierea unui depozit de obiecte partajate
  • Editarea unui depozit de obiecte partajate

Să le privim pe rând

Pasul 1) Crearea unui depozit de obiecte partajate

  • Toate depozitele sunt locale în mod implicit. Pentru a crea un Depozit de Obiecte Partajat, în Dialogul Depozit de Obiecte Box, Faceți clic pe Fișier > Exportă obiecte locale
  • Fișierele din depozit au extensia .tsrDați un nume potrivit, spuneți „guru99” și salvați.
  • Fișierul de depozit partajat este acum creat

Pasul 2) Asocierea unui depozit de obiecte partajate

  • Următorul pas este să asociați depozitul cu testul dvs., ceea ce vă permite să îl utilizați.
  • Pentru a asocia un depozit cu un test, faceți clic pe Resurse > Depozit asociat (etichetat Depozite asociate în curs UFT O singură versiune)
  • Puteți selecta Depozitul de asociat cu Acțiunile disponibile în testul dvs.
  • Acum puteți utiliza acest depozit partajat pentru a vă dezvolta testul

Pasul 3) Editarea unui depozit de obiecte partajate

  • Puteți utiliza Object Repository Manager pentru a edita un depozit partajat.
  • Selectați Resurse > Manager de repozitoriu de obiecteDeschideți Repozitoriul de Obiecte pe care l-am creat, „guru99”.
  • În mod implicit, depozitul este deschis în modul Doar citire. Pentru a activa editarea, faceți clic pe Fișier > Activare editare
  • Odată ce editarea este activată, puteți efectua toate operațiunile precum tăierea, copierea, lipirea și redenumirea obiectelor, pe care le puteți face și în Object Repository.
  • Folosind Object Repository Manager puteți compara, de asemenea, două Object Repositorys. QTP raportează statistici despre ce este unic și ce este comun în ambele depozite
  • Puteți utiliza instrumentul Object Repository Merge Tool pentru a îmbina două depozite într-unul singur.

Următorul videoclip prezintă fluxul de lucru al depozitului partajat.

Diferența dintre depozitul de obiecte local și cel partajat

Majoritatea echipelor rulează în cele din urmă ambele tipuri împreună, așa că este util să vedem compromisurile dintr-un singur loc înainte de a decide unde aparține un nou obiect.

Criterii Depozit de obiecte locale Depozit de obiecte partajate
Disponibilitate Creat automat la fiecare acțiune Trebuie creat, apoi asociat cu o acțiune
domeniu Un singur depozit per acțiune; utilizabil doar de acțiunea respectivă Un fișier utilizabil de mai multe acțiuni în mai multe teste
formatul de fișier Salvat ca ObjectRepository.bdb în folderul de acțiuni Salvat ca extern .tsr fişier
Editarea Editabil direct în fereastra Object Repository Doar citire în mod implicit; editat prin intermediul Object Repository Manager
Reutilizare Nu poate fi reutilizat Conceput pentru reutilizare și control al versiunilor
Mentenanță O proprietate modificată trebuie corectată în fiecare acțiune O proprietate modificată este corectată o singură dată, pentru fiecare test asociat
Cel mai potrivit pentru Aplicații mici și stabile și teste de învățare cu o singură acțiune Aplicații mari sau dinamice cu mai mulți ingineri de automatizare

Pe scurt, depozitul local este mai rapid la început, iar depozitul partajat este mai ieftin de întreținut. Testele de învățare și verificările unice pot rămâne locale; orice lucru pe care îl va rula o a doua persoană aparține unui... .tsr fișier.

Cum se adaugă obiecte direct într-un depozit de obiecte partajat

Exportul obiectelor locale este doar o cale către o .tsr fișier. Când știi deja de ce controale are nevoie suita, este mai rapid să construiești mai întâi depozitul partajat și să nu înregistrezi niciodată.

  1. Selectați Resurse > Manager de repozitoriu de obiecte pentru a deschide fereastra Manager.
  2. Alege Fișier> Nou pentru a porni un depozit partajat gol sau pentru a deschide unul existent .tsr fișier și selectați Fișier > Activare editare.
  3. Folosește Adăugați obiecte opțiunea pentru a indica controlul pe care doriți să îl învățați în aplicația testată, apoi confirmați selecția.
  4. Repetați pentru fiecare control atins de suită, redenumind obiectele cu ceva lizibil pe parcurs.
  5. Selectați Fișier> Salvare și stocați fișierul în folderul de control al sursei alături de test.
  6. Înapoi în test, selectați Resurse > Depozit asociat și atașați fișierul fiecărei acțiuni care îl necesită.

Două obiceiuri fac ca această abordare să fie profitabilă. Denumiți obiectele după rolul lor în business, mai degrabă decât după legendele lor, deoarece legendele se schimbă mai des decât rolurile. De asemenea, păstrați un singur depozit per ecran sau modul al aplicației în loc de un fișier uriaș, deoarece depozitele mai mici se încarcă mai repede și produc mult mai puține conflicte de îmbinare.

Întrebări frecvente

Un depozit de obiecte local este stocat ca ObjectRepository.bdb în folderul său de acțiuni. Un depozit de obiecte partajat este stocat ca un fișier .tsr independent care se află în afara testului și poate fi verificat în controlul sursei.

Da. Deschideți fereastra Object Repository pentru acțiune și alegeți File, apoi Export Local Objects. QTP scrie obiectele acțiunii într-un fișier .tsr, pe care îl asociați apoi cu orice acțiune care le necesită.

Da. Caseta de dialog Asociare depozit acceptă mai multe fișiere .tsr per acțiune și vă permite să setați ordinea priorității acestora. Când același nume de obiect apare de două ori, depozitul de mai sus în listă câștigă.

Managerul de depozit de obiecte deschide fișierele partajate în format doar citire, astfel încât doi ingineri să nu se poată suprascrie reciproc. Alegeți Fișier, apoi Activare editare pentru a dezactiva blocarea la scriere și închideți fișierul când ați terminat, astfel încât colegii să îl poată edita.

Identificare asistată de inteligență artificială în UFT Una potrivește controalele după aspectul vizual și textul etichetei, mai degrabă decât după proprietățile fixe, astfel încât o clasă redenumită nu mai întrerupe pasul. Sugestiile de auto-reparare semnalează, de asemenea, descrierile învechite ale repozitoriului după o modificare a interfeței utilizator.

Copilot poate schița logica, buclele și raportarea VBScript înconjurătoare, dar nu poate vedea repozitoriul dvs. Numele obiectelor trebuie să provină în continuare din repozitoriul în sine, așadar tratați ierarhiile generate ca substituenți și verificați fiecare cu Obiect Spion.

Nu, îl completează. Descriptprogramare ive construiește o descriere a obiectului în cod la momentul execuției, ceea ce se potrivește controalelor dinamice, în timp ce repozitoriul rămâne alegerea mai bună pentru ecrane stabile și scripturi lizibile.

Deschideți ambele fișiere în Object Repository Manager și rulați Object Repository Merge Tool. Acesta raportează care obiecte sunt comune și care sunt unice, apoi vă permite să rezolvați fiecare conflict înainte de a scrie fișierul .tsr îmbinat.

Rezumați această postare cu: