XPath testuotuvas
XML / HTML įvestis
Rezultatai
Techninė informacija
Kaip veikia XPath testuotojas
Ką daro įrankis
XPath testuotojas įvertina XPath išraiškas prieš XML arba HTML dokumentus ir paryškina atitinkančius mazgus šaltinyje. Įklijuojate savo XML/HTML dokumentą, įvedate XPath išraišką ir akimirksniu matote visus atitinkančius mazgus su išgautu jų turiniu. Tai suteikia tiesioginį vizualų grįžtamąjį ryšį kuriant užklausas, naudojamas žiniatinklio duomenų rinkime (web scraping), XSLT transformacijose ir XML duomenų išgavime.
Dažniausi kūrėjų naudojimo atvejai
Kūrėjai naudoja XPath testuotojus kurdami web scraping selektorius (Scrapy, lxml), rašydami XSLT transformacijas, užklausiant SOAP/XML API atsakymus arba išgaunant duomenis iš konfigūracijos failų, tokių kaip Maven POM ir Android manifestai. QA inžinieriai kuria Selenium lokatorius naudodami XPath, kai CSS selektorių nepakanka (pvz., parinkimas pagal teksto turinį arba judėjimas aukštyn medyje). DevOps inžinieriai užklausia XML pagrindu veikiančias build ir diegimo konfigūracijas.
Duomenų formatai, tipai arba variantai
XPath palaiko vietos kelius (//book/title), predikatus (//item[@price > 10]), ašis (ancestor::, following-sibling::), funkcijas (contains(), starts-with(), normalize-space(), count()) ir sąjungos išraiškas (|). XPath 1.0 grąžina mazgų rinkinius, eilutes, skaičius ir logines reikšmes. XPath 2.0+ prideda sekas, reguliariąsias išraiškas ir datos/laiko funkcijas, nors naršyklių įgyvendinimai paprastai palaiko 1.0. Elementams su vardų srities prefiksais teisingam atitikimui reikalinga vardų srities registracija.
Dažniausios klaidos ir kraštiniai atvejai
Dažniausia XPath klaida – pamiršti numatytąsias vardų sritis: vardų srityje esantys elementai nesutaps su keliais be prefikso, net jei šaltiniame dokumente prefiksas nepateikiamas. HTML, išanalizuotas kaip XML, yra jautrus raidžių dydžiui (DIV ≠ div), o HTML5 analizatoriai normalizuoja į mažąsias raides. Santrumpa '//' ieško visų palikuonių ir dideliuose dokumentuose gali būti itin lėta; kai struktūra žinoma, rinkitės absoliučius kelius. Naršyklių XPath varikliai nepalaiko XPath 2.0 funkcijų, tokių kaip matches(), skirtų regex.
Kada naudoti šį įrankį, o kada kodą
Naudokite šį naršyklės įrankį greitam XPath išraiškų prototipavimui su pavyzdiniais dokumentais prieš įterpdami jas į duomenų nuskaitymo ar transformavimo kodą. Gamybiniam XML apdorojimui naudokite specializuotas bibliotekas (lxml Python, Saxon Java), kurios palaiko XPath 2.0/3.0, tinkamai tvarko vardų sritis ir integruojasi su XSLT bei XQuery konvejeriais sudėtingoms dokumentų transformacijoms.