Čo je XPath v seléne?

Ako všetci vieme, že v dôsledku zmeny trendu v softvérovom priemysle bol rozsah manuálneho testovania minimalizovaný a viac testovacích prípadov je automatizovaných, pretože nielen zvyšuje efektívnosť a presnosť, ale aj skracuje čas. Na trhu je dostupných veľa softvérových nástrojov na vývoj a vykonávanie automatizovaných testovacích skriptov. Selén je jedným z nich. Selén je open-source a možno najpoužívanejší balík na testovanie automatizácie používaný na testovanie automatizácie. Podporuje rôzne jazyky ako Php, Java, Perl, Python atď. Inštaláciou ovládačov konkrétnych jazykov. Podporuje tiež viac prehliadačov ako Chrome, Mozilla Firefox, IE1, Edge, Opera, atď.

XPath znamená XML Path Language. V systéme Selenium XPath nie je nič iné ako bežná cesta XML, ktorá sa používa na vyhľadanie ľubovoľného prvku na webovej stránke pomocou výrazu cesty XML. Ak chcete vykonať akúkoľvek operáciu, ako je kliknutie na tlačidlo, zápis do textového poľa, výber ľubovoľného poľa atď. Prvou vecou je nájsť umiestnenie tohto webového prvku v dokumente a v seléne, Xpath pomáha lokalizovať túto cestu. XPath používa štruktúru HTML DOM pri zhromažďovaní cesty ľubovoľného prvku na webovej stránke. Má výraz cesty napísaný spolu s niektorými podmienkami. XPath je odporúčanie W3C,

Syntax XPath v seléne

Nižšie je uvedená syntax XPath v seléne:

Xpath = //Tagname(@Atrribute=value)

kde,

  • //: Používa sa na výber aktuálneho uzla.
  • Názov značky: Určuje názov značky konkrétneho uzla, napríklad img, div, input, atď.
  • @: Vyberie atribút.
  • Atribút: Určuje názov atribútu uzla.
  • Hodnota: Určuje hodnoty atribútov uzla.

V Xpath sa používajú rôzne lokátory na lokalizáciu webových elementov:

  • Id: Vyhľadá webový prvok podľa ID tohto prvku. (ID je jedinečné pre každý webový prvok).
  • Názov: Vyhľadá webový prvok podľa názvu tohto prvku.
  • Názov triedy: Vyhľadá webový prvok podľa názvu triedy tohto prvku.
  • Text odkazu: Vyhľadá webový prvok podľa textu napísaného na odkaz tohto prvku.
  • Cesta CSS: Prvky bez názvu, id, názvu triedy sa zisťujú prostredníctvom cesty CSS, ktorú vytvorili testeri / vývojári.

Druhy XPath v seléne

V seléne sú v podstate dva typy XPath, ktoré sú opísané nižšie:

1. Absolútna XPath

Je to jeden z najjednoduchších a priamych spôsobov, ako nájsť webový prvok v dokumente. Vyberie cestu elementu z koreňového uzla a vyberie cestu, kým element pokryje všetky oddiely v dokumente vrátane div, section, li, atď. Začína sa jednoduchým lomítkom '/' určujúcim úroveň koreňa. Jedinou nevýhodou použitia Absolútnej cesty v seléne je to, že ak dôjde k nejakým zmenám na webovej stránke alebo v dokumente, zmení sa celý XPath tohto prvku, a preto predchádzajúca cesta nebude fungovať a celý program zlyhá.

Príklad:

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

Ak sa nejaké zmeny vykonané v dokumente HTML a pozícia prvkov div zmenili, predchádzajúca XPath zlyhá.

2. Relatívna XPath

Jednou z nevýhod Absolútneho XPath okrem úpravy sú príliš dlhé cesty, relatívne cesty sú v takýchto situáciách záchrancom. Relatívna cesta sa používa na definovanie cesty prvku zo stredu štruktúry HTML DOM. Na rozdiel od Absolute XPaths nie je potrebné definovať cestu z koreňovej úrovne, čo zase znižuje celkovú dĺžku XPath. Začína sa dvojitým lomítkom „//“, tj výberom prvku webu odkiaľkoľvek v dokumente.

Príklad:

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

Funkcie XPath v seléne

Nižšie sú uvedené niektoré z funkcií XPath používaných v seléne:

1. Obsahuje (): Je to metóda, ktorá sa používa vo výraze XPath a používa sa na nájdenie prvku s čiastočným textom v prípade, keď má hľadaný text príliš dlhú dĺžku a hodnota atribútu sa pri opakovanom načítaní dynamicky mení.

Príklad:

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

2. Nasledujúci: Táto metóda vyberie všetky prvky aktuálneho uzla v štruktúre HTML DOM.

Príklad:

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

3. Predchodca: Táto metóda sa používa na výber všetkých prvkov predkov z aktuálneho uzla. Predkom môžu byť starí rodičia, rodičia aktuálneho uzla v dokumente HTML.

Príklad:

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

Nájde všetkých predkov aktuálneho webového prvku, ktoré zodpovedajú kritériám textu () = 'Úvod', ktorý obsahuje značku div.

4. Dieťa: Táto metóda sa používa v scenároch, v ktorých chceme vybrať podradené prvky aktuálneho uzla v dokumente HTML.

Príklad:

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

5. Pokračovanie: Táto metóda sa používa na výber všetkých uzlov postupujúcich k aktuálnemu uzlu alebo uzlov, ktoré prichádzajú pred aktuálny uzol.

Príklad:

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

6. Nasledujúci súrodenec: Táto metóda sa používa na nájdenie súrodencov, ktorí sú na rovnakej úrovni ako aktuálny uzol.

Príklad:

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

7. Rodič: Táto metóda sa používa na vyhľadanie rodiča aktuálneho uzla v dokumente HTML.

Príklad:

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

8. Vlastné: Táto metóda sa používa na lokalizáciu v dokumente HTML. Self znamená iba aktuálny uzol.

Príklad:

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

9. Potomok: Táto metóda sa používa na nájdenie potomkov aktuálneho uzla v dokumente HTML.

Príklad:

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

10. Začiatok s: Táto metóda sa používa v scenároch, keď sa chceme zhodovať so začiatočným textom atribútov a keď musíme nájsť webový prvok, keď sa atribút dynamicky mení pri obnove a znovu načítať webovú stránku.

Príklad:

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

záver

Vyššie uvedené sú niektoré typy XPath a rôzne funkcie používané v seléne pre XPath. Tieto funkcie uľahčujú prácu s XPaths ako najdôležitejší krok pre automatizáciu lokalizácie webového prvku prostredníctvom XPath. Rôzne lokátory, ako napríklad id, názov, cesta CSS, text odkazu, sa používajú v XPath na lokalizáciu webových prvkov na webovej stránke. Znalosti a rôzne spôsoby zisťovania XPath sú veľmi dôležité pri práci s automatizačným testovaním pomocou selénu alebo iného nástroja.

Odporúčané články

Toto je príručka k téme Čo je XPath v seléne ?. Tu uvádzame základné príklady, syntax, typy a funkcie XPath v seléne a ich príklady. Viac informácií nájdete aj v nasledujúcom článku -

  1. Top 10 použití selénu
  2. Ako nainštalovať selén kroky
  3. Selén Alternatívy | súčasti
  4. Čo je Selenium Web Driver?
  5. Čo je XPath?

Kategórie: