Ce este XPath în Seleniu?

După cum știm cu toții că, odată cu schimbarea tendinței în industria software, scopul testării manuale a fost redus la minimum și mai multe cazuri de testare sunt automatizate, deoarece nu numai că crește eficiența și precizia, dar reduce și timpul. Multe instrumente software sunt disponibile pe piață pentru dezvoltarea și execuția scripturilor de testare automate. Seleniul este unul dintre ei. Seleniul este open-source și poate cea mai largă suită de testare a automatizărilor utilizate pentru testarea automatizării. Suporta o varietate de limbi precum Php, Java, Perl, Python etc., prin instalarea driverelor anumitor limbi. De asemenea, acceptă mai multe browsere precum Chrome, Mozilla Firefox, IE1, Edge, browser Opera etc.

XPath înseamnă XML Path Language. În Selenium, XPath nu este altceva decât o cale XML normală, care este utilizată pentru a localiza orice element din pagina web folosind expresia căii XML. Pentru a efectua orice operație, cum ar fi clic pe buton, scrierea într-o casetă de text, selectarea oricărui câmp etc., primul lucru este să găsiți locația acelui element web în document și în Selenium, Xpath vă ajută să localizați acea cale. XPath folosește structura HTML DOM în timp ce adună calea oricărui element dintr-o pagină web. Are o expresie de cale scrisă împreună cu unele condiții. XPath este o recomandare W3C,

Sintaxa XPath în Seleniu

Mai jos este prezentată Sintaxa XPath în Seleniu:

Xpath = //Tagname(@Atrribute=value)

Unde,

  • //: Folosit pentru a selecta nodul curent.
  • Tagname: specifică numele etichetei unui anumit nod ca img, div, input etc.
  • @: Selectează atributul.
  • Atribut: specifică numele atributului nodului.
  • Valoare: specifică valorile atributelor nodului.

În Xpath sunt folosiți diverse localizatoare pentru a localiza elementele web:

  • Id: găsește elementul web după id-ul elementului respectiv. (ID-ul este unic pentru fiecare element web).
  • Nume: Găsește elementul web după numele acelui element.
  • Numele clasei: găsește elementul web după numele clasei acelui element.
  • Link Text: Găsește elementul web prin textul scris pe linkul acelui element.
  • Calea CSS: Elementele care nu au nume, id, nume de clasă se găsesc prin calea CSS creată de testeri / dezvoltatori.

Tipuri de XPath în Seleniu

Există, practic, două tipuri de XPath în Seleniu care sunt descrise mai jos:

1. XPath absolut

Este una dintre cele mai simple și directe modalități de a localiza un element web într-un document. Selectează o cale de element din nodul rădăcină și duce calea până la elementul care acoperă toate secțiunile dintr-un document, inclusiv div, secțiune, li, etc. Începe cu un singur slash înainte '/' specificând nivelul rădăcină. Singurul dezavantaj al utilizării Absolute Path în Selenium este că, dacă există modificări făcute pe site-ul sau un document, atunci se modifică întregul XPath al acelui element și, prin urmare, calea anterioară nu va funcționa și întregul program va fi eșuat.

Exemplu:

html/body/div(1)/section/div/div/div/div(2)/div

Dacă s-au modificat modificări în documentul HTML și poziția elementelor div, atunci XPath-ul anterior va fi eșuat.

2. XPath relativ

Unul dintre dezavantajele Absolute XPath în afară de modificare sunt căile prea lungi, căile relative sunt un salvator în astfel de situații. Calea relativă este utilizată pentru a defini calea unui element din mijlocul structurii HTML DOM. Spre deosebire de Absolute XPaths, nu este necesar să se definească calea de la nivelul rădăcinii, care la rândul său reduce lungimea totală a XPath. Începe cu dublu slash înainte „//”, adică Selectarea elementului web de oriunde în document.

Exemplu:

//input(@id = 'email')/div/li/a

Funcții XPath în Seleniu

Mai jos sunt prezentate câteva dintre funcțiile XPath utilizate în Selenium:

1. Conține (): este o metodă care este utilizată în expresia XPath și este utilizată pentru a localiza elementul cu textul parțial în cazul în care textul care va fi căutat are o lungime prea mare, iar valoarea atributului se schimbă dinamic la reîncărcare.

Exemplu:

Xpath = //*(contains(@name='inputButton'))

2. Următoare: Această metodă selectează toate elementele nodului curent din structura HTML DOM.

Exemplu:

Xpath=//*(@type='password')//following::input(1)

3. Strămoș: Această metodă este utilizată pentru a selecta toate elementele strămoșilor din nodul curent. Strămoșul poate fi bunici, părinți ai nodului curent din documentul HTML.

Exemplu:

Xpath=//*(text()='Introduction')//ancestor::div

Acesta va găsi că toți strămoșii elementului web curent se potrivesc criteriilor text () = 'Introducere' având eticheta div.

4. Copil: această metodă este folosită în scenariile în care dorim să selectăm elementele copil din nodul curent din documentul HTML.

Exemplu:

Xpath=//*(@id='email')/child::div

5. Procedura: Această metodă este utilizată pentru a selecta toate nodurile care merg la nodul curent sau cele care vin înaintea nodului curent.

Exemplu:

Xpath=//*(@type=button)//preceding::div

6. Urmăritor: Această metodă este folosită pentru a localiza frații care sunt la același nivel cu nodul curent.

Exemplu:

Xpath=//*(@type=button)//following-sibling::div

7. Părinte: Această metodă este utilizată pentru a localiza părintele nodului curent din documentul HTML.

Exemplu:

Xpath=//*(@id='password')//parent::li

8. Self: Această metodă este folosită pentru a se localiza în documentul HTML. Sinele semnifică doar nodul curent.

Exemplu:

Xpath=//*(@id='email')//self::input

9. Descendent: Această metodă este utilizată pentru a găsi descendenții nodului curent în documentul HTML.

Exemplu:

Xpath=//*(@id='email')//descendant::a

10. Start-with: Această metodă este folosită în scenarii atunci când dorim să corespundem textului de pornire al atributelor și când trebuie să localizăm elementul web atunci când atributul se schimbă dinamic la actualizarea și reîncărcarea unei pagini web.

Exemplu:

Xpath=//label(starts-with(@name, 'mess_avg'))

Concluzie

Mai sus menționate sunt câteva dintre tipurile XPath și diferitele funcții utilizate în Selenium pentru XPath. Aceste funcții fac ușor de lucrat cu XPaths ca primul pas pentru automatizarea localizării elementului web prin XPath. În XPath sunt utilizate diverse localizatoare precum ID, nume, calea CSS, text de legătură pentru localizarea elementelor web în pagina web. Cunoștințele și diferitele moduri de a găsi XPath sunt foarte importante atunci când lucrați cu teste de automatizare folosind fie Selenium, fie orice alt instrument.

Articole recomandate

Acesta este un ghid pentru Ce este XPath în Seleniu ?. Aici discutăm conceptul de bază, sintaxa, tipurile și funcțiile XPath în Selenium cu exemplele sale. De asemenea, puteți consulta articolul următor pentru a afla mai multe -

  1. Top 10 Utilizări ale Seleniumului
  2. Cum se instalează Selenium | paşi
  3. Alternative de seleniu | Componente
  4. Ce este Selenium Web Driver?
  5. Ce este XPath?