how handle scroll bar selenium webdriver
Denne opplæringen forklarer rullefelt, typer rullefelt og hvordan du håndterer rullefelt i selen:
Rullefeltet er en tynn lang seksjon ved kanten av skjermen på datamaskinen. Ved hjelp av rullefeltet kan vi se hele innholdet eller se hele siden mens vi blar oppover eller nedover til høyre ved hjelp av en mus.
Først, la oss forstå noen ord som knott, spor og knapper som brukes med henvisning til rullefelt.
=> Sjekk ALLE Selen-opplæringsprogrammer her
testutførelsesrapportmal i excel
I denne opplæringen vil vi lære om typer rullefelt. Vi vil også se på rullefeltet i HTML, forstå implementeringen av koden for håndtering av rullefeltet i Selen, og til slutt vite eksemplene / applikasjonene der rullefelt ofte brukes.
Hva du vil lære:
Forstå rullefelt
Bildet nedenfor viser to typer rullefelt:
Hva er knott, spor og knapper
Rullefelt har knappene i begge ender av linjen, som kan være en fremoverknapp og bakoverknapp for vannrett rullefelt og oppover og nedover knapp for den vertikale rullefeltet.
Knott er den delen av rullefeltet som er bevegelig. Den kan flyttes til venstre for høyre for en horisontal rullefelt og opp-ned for den vertikale rullefeltet.
Spor er delen av rullefeltet som knotten kan flyttes på for å se hele innholdet.
Bildet nedenfor forklarer tydelig konseptet:
(bilde kilde )
Typer av rullefelt
I utgangspunktet er det av to typer:
- Horisontal rullefelt
- Vertikal rullefelt
# 1) Horisontal rullefelt
En vannrett rullefelt lar brukeren bla mot venstre eller høyre for å se alt innholdet i vinduet.
Ovenstående bilde viser en horisontal rullefelt uthevet i rødt. Vi kan se at rullefeltet kan flyttes fra venstre til høyre eller omvendt for å se hele innholdet som vises på skjermen.
# 2) Vertikal rullefelt
En vertikal rullefelt lar brukeren bla opp eller ned for å se hele innholdet i vinduet.
Ovenstående bilde viser en vertikal rullefelt markert med rødt. Vi kan se at rullefeltet kan flyttes fra opp til nedover eller omvendt for å se hele innholdet som vises på skjermen.
Vanligvis har websider mye innhold og er gode eksempler på å ha vertikale rullefelt.
Rullefelt i HTML
Den brukes veldig ofte på forskjellige nettsteder, systemapplikasjoner og nesten overalt. Det lar brukere se innholdet på siden fullt ut enten ved å bla oppover eller nedover til høyre.
Bildet nedenfor er et slikt eksempel opprettet i Html:
Se følgende HTML-kode for ovenstående bilde:
Scroll Bar #text { width: 200px; height: 200px; border: 1px solid; font-size: 30px; overflow: scroll; text-align: center; } Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World!
Dermed kan vi se HTML-siden som når du blar nedover og oppover ved hjelp av en vertikal rullefelt, kan hele innholdet vises.
Kode for håndtering av rullefelt i selen
Selen håndterer rulleoperasjoner på forskjellige måter. De forskjellige metodene er som følger:
# 1) Bruk av det innebygde rullealternativet ELLER ved å bruke handlingsklasse
Rulling kan håndteres i Selen ved hjelp av et innebygd rullealternativ som vist i implementeringskoden nedenfor:
java grunnleggende intervju spørsmål og svar
Syntaksen for rullefelt ved hjelp av innebygde rullealternativer:
Actions act = new Actions(driver); //Object of Actions class act.sendKeys(Keys. PAGE_DOWN ).build().perform(); //Page Down act.sendKeys(Keys. PAGE_UP ).build().perform(); //Page Up
Kode for håndtering av rullefelt ved hjelp av et innebygd rullealternativ.
package SeleniumPrograms; import org.openqa.selenium.By; import org.openqa.selenium.Keys; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.interactions.Actions; public class Scroll { public static void main(String() args) throws InterruptedException { WebDriver dr = new FirefoxDriver(); dr.manage().window().maximize(); dr.get('https://opensource-demo.orangehrmlive.com/'); //testing webpage WebElement uname = dr.findElement(By.id('txtUsername')); //username uname.sendKeys('Admin'); WebElement pwd = dr.findElement(By.name('txtPassword')); //password pwd.sendKeys('admin123'); WebElement login_button = dr.findElement(By.xpath('//input(@id='btnLogin')')); login_button.click(); //login button WebElement admin = dr.findElement(By.id('menu_admin_viewAdminModule')); admin.click(); WebElement job = dr.findElement(By.id('menu_admin_Job')); job.click(); WebElement jobtitle_link = dr.findElement(By.linkText('Job Titles')); jobtitle_link.click(); Actions act = new Actions(dr); act.sendKeys(Keys.PAGE_DOWN).build().perform(); //Page Down System.out.println('Scroll down perfomed'); Thread.sleep(3000); act.sendKeys(Keys.PAGE_UP).build().perform(); //Page Up System.out.println('Scroll up perfomed'); Thread.sleep(3000); } }
I programkoden ovenfor håndteres rulling i Selen ved hjelp av Handlinger klasse. Dette gjøres ved å lage et objekt av Handlingsklasse ved å passere sjåføren. Vi har også sett bruken av et innebygd rullealternativ for opprulling så vel som for nedoverrulling.
Resultatet av ovennevnte kode:
(bilde kilde )
Dermed kan vi se Scroll Down og Scroll Up-operasjoner utført ved hjelp av Selenium Webdriver ved hjelp av et innebygd rullealternativ ELLER ved hjelp av Handlinger klassemetode.
# 2) Bruke JavascriptExecutor ELLER av Pixel
Denne metoden hjelper til å bla gjennom nettsiden ved å nevne antall piksler som vi ønsker å bla enten oppover eller nedover. Nedenfor er implementeringskoden for rulling av Pixel eller bruk av JavascriptExecutor.
package SeleniumPrograms; import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class ScrollBar { public static void main(String() args) throws InterruptedException { WebDriver dr = new FirefoxDriver(); dr.manage().window().maximize(); dr.get('https://opensource-demo.orangehrmlive.com/'); //testing webpage WebElement uname = dr.findElement(By.id('txtUsername')); //username uname.sendKeys('Admin'); WebElement pwd = dr.findElement(By.name('txtPassword')); //password pwd.sendKeys('admin123'); WebElement login_button = dr.findElement(By.xpath('//input(@id='btnLogin')')); login_button.click(); //loginbutton JavascriptExecutor js = (JavascriptExecutor)dr; js.executeScript('window.scrollBy(0,70)'); //Scroll Down(+ve) Thread.sleep(3000); System.out.println('Scrolled down..'); js.executeScript('window.scrollBy(0,-50)'); //Scroll Up (-ve) Thread.sleep(3000); System.out.println('Scrolled up..'); } }
Resultatet av ovennevnte kode:
Ovenstående bilde viser rulle ned utført av pikselverdi som nevnt i koden ovenfor med 70 (nedover). På samme måte utføres deretter opprullingsoperasjonen ved å gi pikselverdi = -50 (dvs. oppover).
Bildet nedenfor viser bla opp (med 50):
Dermed, i denne metoden, har vi brukt JavascriptExecutor og utført Rull opp og ned ved å gi pikselverdier.
Eksempler / applikasjoner
Det er mange applikasjoner eller eksempler på rullefelt. Få av dem er som beskrevet nedenfor:
# 1) Rullefelt i Excel-filer:
Som vi vet at Excel-filer har en enorm mengde data lagret i seg. Det blir vanskelig å se hele innholdet på en enkelt side. Derfor kan rulling hjelpe brukeren til å se dataene som ikke er tilstede på gjeldende skjerm.
verktøy for automatiseringstesting for webapplikasjoner
# 2) Bla i Notisblokk
I bildet ovenfor kan rullefelt ses horisontalt og vertikalt, noe som gir full synlighet av data i notisblokkdokumentet.
# 3) Bruk av rullefelt i nettlesere
Mens vi leser dataene, kan vi bare se halvparten av dataene på nettleserskjermen. Rulling hjelper deg med å bevege deg fremover og bakover for å ha hele utsikten. Ved å bruke horisontale og vertikale rullefelt kan du vise innholdet i hele nettleserskjermen.
Det er mange flere slike eksempler som hjelper brukerne til å se de fullstendige dataene som vises på skjermen.
Konklusjon
I denne opplæringen har vi lært om rullefelt, deres typer. Vi har også sett å lage og bruke rullefeltet på HTML-siden
Vi har forstått metodene for å implementere kode for å håndtere rullefelt ved hjelp av Selen, dvs. innebygd rullealternativ / bruke handlingsklasse og bruke JavascriptExecutor / av Pixel, og har gått gjennom få applikasjoner der rullefelt ofte brukes.
=> Les gjennom hele Selen-guiden
Anbefalt lesing
- Hvordan håndtere varsler / popup-vinduer i Selen WebDriver - Selenium-veiledning nr. 16
- Hvordan laste opp fil ved hjelp av Selenium Webdriver - 3 metoder
- Hvordan velge radioknapper i Selen WebDriver?
- Hvordan kjøre Selen WebDriver i forskjellige populære nettlesere
- Håndtering av iFrames ved hjelp av Selenium WebDriver switchTo () -metoden
- Veiledning for å generere omfattende rapporter i Selenium WebDriver
- XPath-akser for dynamisk XPath i Selen WebDriver
- Integrasjon av Jenkins med Selenium WebDriver: trinnvis veiledning