Mis on kerimisriba?
Kerimisriba võimaldab liikuda ekraanil horisontaalselt või vertikaalselt, kui praegune lehel kerimine ei sobi ekraani nähtavale alale. Seda kasutatakse akna üles ja alla liigutamiseks.
Seleeni veebidraiver ei vaja toimingute tegemiseks kerimist, kuna see manipuleerib DOM-iga. Kuid teatud veebilehtedel muutuvad elemendid nähtavaks alles siis, kui kasutaja on nende juurde kerinud. Sellistel juhtudel võib osutuda vajalikuks kerimine.
Kerimisriba on kahte tüüpi: horisontaalne ja vertikaalne kerimisriba, nagu on näidatud alloleval ekraanipildil.
Kerige seleenis
Seleniumi abil sirvimiseks võite kasutada liidest JavaScriptExecutor, mis aitab JavaScripti meetodeid käivitada läbi Seleeni veebidraiveri
Lisateave JavaScriptExecutori kohta
Süntaks:
JavascriptExecutor js = (JavascriptExecutor) draiver;js.executeScript (skript, argumendid);
- Skript - see on käivitamiseks vajalik JavaScript.
- Argumendid - need on skripti argumendid. See on vabatahtlik.
Seleeniskript lehel alla kerimiseks
Vaadakem, vaadake seleeni veebidraiverit kasutades järgmise 3 stsenaariumi abil veebilehte alla kerimist:
- 1. stsenaarium: Veebilehe pikslite kaupa alla kerimiseks.
- Stsenaarium 2: Veebilehe kerimiseks elemendi nähtavuse järgi.
- Stsenaarium 3: Veebilehe allosas kerimiseks.
- Stsenaarium 4: horisontaalne kerimine veebilehel.
1. stsenaarium: Veebilehe pikslite kaupa alla kerimiseks.
Seleeni skript
import org.openqa.selenium.JavascriptExecutor;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.testng.annotations.Test;avalik klass ScrollByPixel {WebDriveri draiver;@Testavalik tühine ByPixel () {System.setProperty ("webdriver.chrome.driver", "E: //Selenium//Selenium_Jars//chromedriver.exe");draiver = uus ChromeDriver ();JavascriptExecutor js = (JavascriptExecutor) draiver;// Käivitage rakendusdriver.get ("http://demo.guru99.com/test/guru99home/");// Akna maksimeerimiseks. See kood ei pruugi Selenium 3 purkidega töötada. Kui skript ebaõnnestub, võite eemaldada alloleva readraiver.halda (). aken (). maksimeeri ();// See kerib lehte vertikaalselt 1000 piksli võrra allapoolejs.executeScript ("window.scrollBy (0,1000)");}}
Skripti kirjeldus : ülaltoodud koodis käivitame esmalt antud URL-i Chrome'i brauseris. Seejärel kerige executeScripti kaudu lehte 1000 piksli võrra. Javascripti meetod ScrollBy () kerib veebilehe konkreetse pikslite arvuni.
Meetodite ScrollBy () süntaks on:
executeScript ("window.scrollBy (x-pikslit, y-pikslit)");
x-piksel on number x-teljel, see liigub vasakule, kui arv on positiivne, ja paremale, kui arv on negatiivne. y-piksel on number y-teljel, see liigub allapoole, kui arv on positiivne ja see liigub ülespoole, kui arv on negatiivne.
Näide:
js.executeScript ("window.scrollBy (0,1000)"); // Kerige vertikaalselt 1000 piksli võrra alla
Väljundanalüüs: siin on väljund ülaltoodud skripti käivitamisel.
Stsenaarium 2: Veebilehe kerimiseks elemendi nähtavuse järgi.
Seleeni skript
import org.openqa.selenium.By;import org.openqa.selenium.JavascriptExecutor;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;import org.testng.annotations.Test;avalik klass ScrollByVisibleElement {WebDriveri draiver;@Testpublic void ByVisibleElement () {System.setProperty ("veebidraiver.chrome.driver", "G: //chromedriver.exe");draiver = uus ChromeDriver ();JavascriptExecutor js = (JavascriptExecutor) draiver;// Käivitage rakendusdriver.get ("http://demo.guru99.com/test/guru99home/");// Leidke element lingi teksti järgi ja salvestage muutuja "Element"WebElementi element = driver.findElement (By.linkText ("Linux"));// See kerib lehte, kuni element leitaksejs.executeScript ("argumendid [0] .scrollIntoView ();", Element);}}
Skripti kirjeldus: ülaltoodud koodis käivitame antud URL-i kõigepealt Chrome'i brauseris. Järgmisena kerige lehte, kuni mainitud element on praegusel lehel nähtav. Javascripti meetod scrollIntoView () kerib lehte, kuni mainitud element on täielikus vaates:
js.executeScript ("argumendid [0] .scrollIntoView ();", Element);
"argumendid [0]" tähendab lehe esimest indeksit algusega 0.
Kus "Element" on veebilehe lokaliseerija.
Väljundanalüüs: siin on väljund ülaltoodud skripti käivitamisel.
Stsenaarium 3: Veebilehe allosas kerimiseks.
Seleeni skript
import org.openqa.selenium.JavascriptExecutor;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.testng.annotations.Test;avalik klass ScrollByPage {WebDriveri draiver;@Testavalik tühine ByPage () {System.setProperty ("webdriver.chrome.driver", "E: //Selenium//Selenium_Jars//chromedriver.exe");draiver = uus ChromeDriver ();JavascriptExecutor js = (JavascriptExecutor) draiver;// Käivitage rakendusdriver.get ("http://demo.guru99.com/test/guru99home/");// See kerib veebilehte lõpuni.js.executeScript ("window.scrollTo (0, document.body.scrollHeight)");}}
Skripti kirjeldus: ülaltoodud koodis käivitame antud URL-i kõigepealt Chrome'i brauseris. Järgmisena kerige lehe alaossa. Javascripti meetodi kerimine () () kerige lehe lõpuni.
js.executeScript ("window.scrollTo (0, document.body.scrollHeight)");
"document.body.scrollHeight" tagastab kogu keha ehk veebilehe kogu kõrguse.
Väljundanalüüs: siin on väljund ülaltoodud skripti käivitamisel.
Stsenaarium 4: horisontaalne kerimine veebilehel.
Seleeni skript
import org.openqa.selenium.By;import org.openqa.selenium.JavascriptExecutor;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;import org.testng.annotations.Test;avalik klass HorizontalScroll {WebDriveri draiver;@Testpublic void ScrollHorizontally () {System.setProperty ("webdriver.chrome.driver", "E: //Selenium//Selenium_Jars//chromedriver.exe");draiver = uus ChromeDriver ();JavascriptExecutor js = (JavascriptExecutor) draiver;// Käivitage rakendusdriver.get ("http://demo.guru99.com/test/guru99home/scrolling.html");WebElementi element = driver.findElement (By.linkText ("VBScript"));// See kerib lehte horisontaalselt, kuni element leitaksejs.executeScript ("argumendid [0] .scrollIntoView ();", Element);}}
Skripti kirjeldus: ülaltoodud koodis käivitame antud URL-i kõigepealt Chrome'i brauseris. Järgmisena kerige lehte horisontaalselt, kuni mainitud element on praegusel lehel nähtav. Javascripti meetod scrollIntoView () kerib lehte, kuni mainitud element on täielikus vaates:
js.executeScript ("argumendid [0] .scrollIntoView ();", Element);
Väljundanalüüs: siin on väljund ülaltoodud skripti käivitamisel.
Kokkuvõte
- Ülaltoodud õpetuses illustreerime veebilehe kerimist läbi erinevate stsenaariumide.
- Esimese stsenaariumi korral näitasime kerimist lehekülgede kaupa pikslite kaupa.
- Teise stsenaariumi korral näitasime lehe kerimist allapoole, kuni element on nähtav.
- Kolmanda stsenaariumi korral näitasime lehe allosas kerimist lehe allapoole.
- Neljanda stsenaariumi korral illustreerige veebilehe horisontaalset kerimist.