Kuidas kontrollida tööriistavihjet seleeni veebidraiveri abil

Lang L: none (table-of-contents):

Anonim

Tööriistavihend seleenis

Tooltip seleeni on tekst, mis ilmub siis, kui hiirekursor objekti veebilehe. Objektiks võib olla link, pilt, nupp, tekstiala jne. Tööriistavihje tekst annab sageli rohkem teavet objekti kohta, millel kasutaja hiirekursori kohal hõljub.

Tööriistavihjed rakendati tavapäraselt elemendi atribuudina „pealkiri”. Selle atribuudi väärtust näidati hiirekursoril tööriistavihjena. See on staatiline tekst, mis annab elemendi kohta teavet ilma stiilita.

Nüüd on tööriistanõuannete rakendamiseks saadaval palju pistikprogramme. Täpsemad stiilide, renderdamise, piltide ja linkidega näpunäited rakendatakse JavaScripti / JQuery pistikprogrammide või CSS-i tööriistavihje abil.

  • Staatiliste tööriistavihjete juurde pääsemiseks või kontrollimiseks, mis on rakendatud HTML-i atribuudi "title" abil, võime lihtsalt kasutada WebElementi meetodit getAttribute ("pealkiri"). Selle meetodi tagastatud väärtust (mis on tööriistavihje tekst) võrreldakse kontrollimise eeldatava väärtusega.
  • Tööriistavihu juurutamise muude vormide puhul peame hiirekursori efekti loomiseks ja seejärel elemendi tööriistavihje hankimiseks kasutama veebidraiveri pakutavat "Advanced User Interactions API".

Lühidalt täpsemate kasutajate interaktsioonide API-st:

Täiustatud kasutajate interaktsioonide API pakub API kasutaja toimingutele, nagu lohistamine, hõljutamine, mitmikvalimine, klahvi vajutamine ja vabastamine ning muud toimingud, kasutades veebilehel klaviatuuri või hiirt.

API-le lisateabe saamiseks võite viidata sellele lingile.

https://seleniumhq.github.io/selenium/docs/api/java/index.html?org/openqa/selenium/interactions/Actions.html

Vaatame, kuidas kasutada paari klassi ja meetodit, mida vajame liuguri elemendi nihutamiseks.

Samm 1) API kasutamiseks tuleb importida järgmised paketid / klassid:

Samm 2) Looge klassi "Toimingud" objekt ja koostage kasutaja toimingute järjestus. Actions klassi kasutatakse selliste kasutajate toimingute järjestuse loomiseks nagu moveToElement (), dragAndDrop () jne. API pakub erinevaid kasutaja toimingutega seotud meetodeid.

Draiveri objekt esitatakse selle konstruktori parameetrina.

Samm 3) Looge toiminguobjekt, kasutades klassi "Toimingud" meetodit build (). Kõigi toiminguobjekti (siin ehitaja) loodud toimingute käivitamiseks kutsuge meetodit perform ().

Oleme näinud, kuidas kasutada mõnda kasutajaliidese meetodit, mille pakub API - clickAndHold (element), moveByOffset (10,0), release (). API pakub palju selliseid meetodeid.

Lisateavet leiate lingilt.

Kuidas saada tööriistavihiku teksti seleeni veebidraiverist

Vaatame lihtsa stsenaariumi abil tööriista näpunäidetele juurdepääsu ja nende kontrollimise tutvustust

  • 1. stsenaarium: tööriistavihje rakendamiseks kasutatakse atribuuti "pealkiri"
  • Stsenaarium 2: tööriistavihje rakendamine toimub jQuery pistikprogrammi abil.

1. stsenaarium: HTML 'title' atribuut

Selle juhtumi jaoks võtame näite saidi - http://demo.guru99.com/test/social-icon.html.

Püüame kontrollida lehe paremas ülanurgas asuva ikooni "github" tööriistavihjet.

Selle tegemiseks leiame kõigepealt elemendi ja saame selle atribuudi 'title' ning kontrollime seda oodatud tööriista vihjetekstiga.

Kuna eeldame, et tööriista ots on atribuudis "pealkiri", ei automatiseeri me isegi hiire hõljutamise efekti, vaid lihtsalt leiame atribuudi väärtuse meetodi "getAttribute ()" abil.

Siin on kood

import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium. *;avaliku klassi tööriistanipp {public staatiline void main (String [] args) {String baseUrl = "http://demo.guru99.com/test/social-icon.html";System.setProperty ("veebidraiver.chrome.driver", "G: \\ chromedriver.exe");WebDriveri draiver = uus ChromeDriver ();draiver.get (baseUrl);String eeldatavTooltip = "Github";// Leidke päise paremast ülanurgast Githubi ikoonWebElement github = driver.findElement (By.xpath (".//*[@ class = 'soc-ico show-round'] / a [4]"));// saada githubi ikooni atribuudi "title" väärtusString actualTooltip = github.getAttribute ("pealkiri");// Kinnitage, et tööriistavihje väärtus on ootuspäraneSystem.out.println ("Tööriista vihje tegelik pealkiri" + actualTooltip);if (actualTooltip.equals (eeldatavTooltip)) {System.out.println ("Testjuhtum läbitud");}juht.sule ();}}

Koodi selgitus

  1. Leidke WebElement, mis tähistab ikooni "github".
  2. Hankige selle atribuut "title" meetodi getAttribute () abil.
  3. Kinnitage väärtus eeldatava näpunäite väärtuse suhtes.

Stsenaarium 2: JQuery pistikprogramm:

Tööriistavihtide rakendamiseks on saadaval palju JQuery pistikprogramme ja igaühel neist on veidi erinev rakendusvorm.

Mõni pistikprogramm eeldab, et tööriistavihje HTML on kogu aeg selle elemendi kõrval, mille jaoks näpunäide on rakendatav, samas kui teised loovad dünaamilise "div" sildi, mis ilmub lennult elemendi kohal hõljudes.

Vaatleme oma tutvustuse jaoks näpunäidete juurutamise viisi "jQuery Tools Tooltip".

Siin URL-is - http://demo.guru99.com/test/tooltip.html näete demot, kus hiirega hiirekursori "Allalaadimine kohe" kohal hõljutades saame täpsema tööriistavihje koos pildi, tähelepanulaiendi tausta, tabeli ja selle sees olev link, millele saab klõpsata.

Kui vaatate allpool olevat allikat, näete, et tööriista vihjet tähistav div-silt on lingi "Laadi kohe alla" sildi kõrval alati olemas. Kuid allpool oleva skriptimärgendi sees olev kood kontrollib, millal seda tuleb hüpata.

Proovime siin tutvustamiseks kontrollida lihtsalt lingi teksti.

Esmalt leiame WebElementi, mis vastab jaotisele "Laadi alla". Seejärel liigume Interactions API abil elementi (hiirekursor). Järgmisena leiame kuvatud tööriistavihje sees olevale lingile vastava WebElementi ja kontrollime seda oodatud teksti suhtes.

Siin on kood

importida org.openqa.selenium.interactions.Action;importida org.openqa.selenium.interactions.Actions;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium. *;avalik klass JqueryToolTip {public staatiline void main (String [] args) {String baseUrl = "http://demo.guru99.com/test/tooltip.html";System.setProperty ("veebidraiver.chrome.driver", "G: \\ chromedriver.exe");WebDriveri draiver = uus ChromeDriver ();String eeldatavTooltip = "Mida on uut punktis 3.2";draiver.get (baseUrl);WebElementi allalaadimine = driver.findElement (By.xpath (".//*[@ id = 'download_now']"));Toimingute koostaja = new Toimingud (draiver);builder.clickAndHold (). moveToElement (alla laadima);builder.moveToElement (alla laadima) .build (). perform ();WebElement toolTipElement = driver.findElement (By.xpath (".//*[@ class = 'box'] / div / a"));String actualTooltip = toolTipElement.getText ();System.out.println ("Tööriista vihje tegelik pealkiri" + actualTooltip);if (actualTooltip.equals (eeldatavTooltip)) {System.out.println ("Testjuhtum läbitud");}juht.sule ();}}

Koodi selgitus

  1. Leidke WebElement, mis vastab elemendile "laadige kohe alla", mille hõljutame hiirega.
  2. Interactions API abil hõljutage hiirekursorit nupul „Laadi kohe alla”.
  3. Eeldades, et näpunäide kuvatakse, leidke WebElement, mis vastab tööriistavihje sees olevale lingile, st "a" märgendile.
  4. Kontrollige getText () abil saadud lingi tööriistavihje eeldatava väärtuse vastavusse, mille oleme salvestanud jaotisesse "eeldatavToolTip"

Kokkuvõte:

Selles õpetuses olete õppinud, kuidas pääseda tööriistavihjetele, kasutades Seleniumi veebidraiverit.

  • Tööriistanõuandeid rakendatakse mitmel viisil -
    • Põhiline juurutamine põhineb HTML-i atribuudil "title". getAttribute (pealkiri) saab tööriistavihje väärtuse.
    • Muude tööriistanippide juurutamiseks, näiteks JQuery, CSS-i vihjed, on hiire hõljumise efekti loomiseks vaja Interaction API-d
  • Täiustatud kasutajate interaktsioonide API
    • Klass toimingute moveToElement (element) abil saab elementi hiirega hõljutada.
    • Klass Meetod Build () ehitab kasutaja toimingute jada Action-objekti.
    • Klass Perform () teostab kõik kasutaja toimingute järjestused korraga.
  • Tööriistavihje kontrollimiseks peame elemendi kõigepealt hõljutama, seejärel leidma tööriista otsale vastava elemendi ja hankima selle teksti või muud väärtused, et kontrollida oodatud väärtusi.