Cum funcționează Identificarea obiectelor în QTP/UFT?

Ce este Identificarea obiectelor?

QTP folosește, de asemenea, o tehnologie „umană” pentru identificarea obiectelor. În timpul înregistrării, Time QTP încearcă să învețe proprietățile unui obiect GUI pe care se efectuează operația. În timpul rulării, Micro Focus UFT compară proprietățile obiectului stocat cu proprietățile reale ale obiectului disponibil pe ecran și identifică în mod unic un obiect independent de locația sa pe ecran.

Obiectul stocat și împreună cu proprietățile sale este numit Obiect TEST

În timpul Run-Time, obiectul real disponibil în aplicația testată este apelat Obiect de rulare

Acesta este HP UFT „Testează modelul obiectului”

Ce este depozitul de obiecte?

Informațiile despre obiectele de testare sunt stocate în Depozit de obiecte

Add-in-uri ajutor la instruire Test rapid înainte de natura obiectului care urmează să fie înregistrat, astfel încât să se reducă timpul necesar pentru învățarea proprietăților acestuia

Următorul tutorial video demonstrează modul în care QTP identifică un obiect GUI (pe ecran)

Clic aici dacă videoclipul nu este accesibil

QTP stochează obiectul și proprietățile sale în depozitul de obiecte pentru a le identifica în timpul rulării. Un obiect poate avea un număr mare de proprietăți asociate cu el. De exemplu, în Mediul Web, un Buton ar putea avea următoarele proprietăți asociate.

Depozit de obiecte

If QTP va încerca și va aminti toate proprietățile disponibile pentru un obiect, dimensiunea depozitului de obiecte va crește și timpul de execuție a scriptului va crește drastic. Pentru a evita acest lucru, QTP în mod implicit nu stochează toate proprietățile unui obiect, ci un număr limitat de proprietăți tipice pentru un obiect, care ajută la identificare unică. Această alegere de proprietăți (care urmează să fie salvată în timp record) pentru diferite medii și obiecte este stocată în Identificarea obiectelor

Obiect DescriptProprietăți ionice, obligatorii și de asistență

Un obiect proprietate şi sa valoare sunt numite Obiect Description. Obiectul Descriptionul este folosit pentru a identifica în mod unic obiectul corespunzător. De exemplu, pentru o proprietate WebButton "Nume" și valoarea ei”Autentificare" împreună pot fi numiți ca obiect Description pentru acel buton web.

Pentru a accesa, în QTP în Meniul Instrumente, selectați Identificare obiect. În dialogul de recunoaștere a obiectelor Box puteți vedea un meniu derulant al tuturor mediilor instalate și încărcate.

Puteți selecta un mediu și QTP completează automat lista cu toate obiectele acceptate care aparțin acelui mediu. În partea dreaptă, QTP listează proprietățile care vor fi stocate pentru obiect. Lista este împărțită în

  1. Proprietăți obligatorii va fi stocat implicit pentru acel obiect
  2. Proprietăți de asistență În cazul în care în timpul record al scriptului QTP NU poate crea o descriere unică a obiectului, acesta va stoca proprietăți de asistență

Pentru a înțelege mai bine acest lucru, luați în considerare exemplul unei imagini web.

Obiect DescriptProprietăți ionice, obligatorii și de asistență

  • QTP va stoca o valoare de alt, etichetă HTML, tip de imagine, proprietăți obligatorii, chiar dacă o poate identifica în mod unic folosind numai proprietatea alt.
  • În cazul în care nu poate crea o descriere unică folosind proprietatea obligatorie, QTP va stoca proprietatea de asistență. În acest caz, QTP va stoca proprietatea clasei.
  • Dacă această proprietate ajută la crearea unei descrieri unice a obiectului, QTP nu va stoca numele fișierului, proprietatea înălțime. Dacă o proprietate de clasă nu este suficientă pentru a crea o descriere unică, QTP va stoca proprietatea nume de fișier. Dacă proprietatea nume de fișier creează o descriere unică, QTP nu va stoca proprietatea înălțimii și așa mai departe.
  • Să presupunem că în timpul înregistrării, QTP a stocat doar proprietatea clasei. La Runtime, QTP va uita de distincția dintre proprietățile obligatorii și cele de asistență și va compara toate proprietățile înregistrate.
  • Chiar dacă oricare dintre proprietăți nu se potrivește cu valoarea sa stocată, Scriptul eșuează