how handle scroll bar selenium webdriver
Denna handledning förklarar Scroll Bars, typer av Scroll Bars och hur man hanterar Scroll Bar i Selen:
Rullfältet är ett tunt långt avsnitt vid kanten av datorns skärm. Med hjälp av rullningsfältet kan vi visa hela innehållet eller visa hela sidan medan vi bläddrar uppåt eller vänster till höger med hjälp av en mus.
Låt oss först förstå några termer som ratt, spår och knappar som används med hänvisning till rullningslister.
=> Kontrollera ALLA Selen-handledning här
vilken process kräver automatiserade byggnader och test för att verifiera programvara under utvecklingen
I denna handledning lär vi oss om typer av rullningsfält. Vi kommer också att titta på rullningsfältet i HTML, förstå implementeringen av kod för hantering av rullningsfält i Selen, och äntligen känna till de exempel / applikationer där rullningsfält ofta används.
Vad du kommer att lära dig:
Förstå rullningsfält
Bilden nedan visar två typer av rullningsfält:
Vad är knopp, spår och knappar
Rullstaplar har knappar i båda ändarna av stapeln som kan vara en framåtknapp och bakåtknapp för horisontell rullningslist och uppåt och nedåtknapp för den vertikala rullningslisten.
Knopp är den del av rullningsfältet som är rörlig. Den kan flyttas åt vänster till höger för ett horisontellt rullningsfält och uppåt för det vertikala rullningsfältet.
Spår är den del av rullningsfältet som ratten kan flyttas för att se hela innehållet.
Bilden nedan förklarar tydligt konceptet:
(bild källa )
Typer av rullningsfält
I grund och botten finns det två typer:
- Horisontell rullningslist
- Vertikal rullningslist
# 1) Horisontell rullningslist
Ett horisontellt rullningsfält låter användaren rulla åt vänster eller höger för att se allt innehåll i fönstret.
Ovanstående bild visar ett horisontellt rullningsfält markerat med rött. Vi kan se att rullningsfältet kan flyttas från vänster till höger eller vice versa för att visa hela innehållet som visas på skärmen.
# 2) Vertikalt rullningsfält
Ett vertikalt rullningsfält låter användaren rulla uppåt eller tvärtom för att se hela innehållet i fönstret.
Ovanstående bild visar ett vertikalt rullningsfält markerat med rött. Vi kan se att rullningsfältet kan flyttas från upp till nedåt eller tvärtom för att se hela innehållet som visas på skärmen.
Vanligtvis har webbsidor mycket innehåll och är bra exempel på vertikala rullningslister.
Bläddringsfält i HTML
Det används mycket vanligt på olika webbplatser, systemapplikationer och nästan överallt. Det låter användare se hela innehållet på sidan antingen genom att rulla uppåt eller nedåt.
Bilden nedan är ett sådant exempel som skapats i Html:
Se följande HTML-kod för ovanstående bild:
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!
Således kan vi se Html-sidan som när det rullas nedåt och uppåt med hjälp av en vertikal rullningslist kan hela innehållet visas.
Kod för hantering av rullningslisten i selen
Selen hanterar rullningsoperationer på olika sätt. De olika metoderna är som följer:
# 1) Använda det inbyggda rullningsalternativet ELLER genom att använda åtgärdsklassen
Scrollning kan hanteras i Selen med ett inbyggt rullalternativ som visas i nedanstående implementeringskod:
Syntaxen för rullningsfältet med hjälp av inbyggda rullningsalternativ:
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
Kod för hantering av rullningsfältet med ett inbyggt rullalternativ.
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 ovanstående programkod hanteras rullning i Selen med Åtgärder klass. Detta görs genom att skapa ett objekt av åtgärdsklass genom att skicka föraren. Vi har också sett användningen av ett inbyggt rullalternativ för uppåtgående rullning såväl som för nedåtgående rullning.
Utgången från ovanstående kod:
(bild källa )
bästa gratis programvara för att förbättra datorns prestanda
Således kan vi se Scroll Down och Scroll Up-operationer utförda med hjälp av Selenium Webdriver med hjälp av ett inbyggt rullningsalternativ ELLER med hjälp av Åtgärder klassmetod.
# 2) Använda JavascriptExecutor ELLER av Pixel
Denna metod hjälper till att bläddra på webbsidan genom att nämna pixelantalet genom vilket vi vill bläddra antingen uppåt eller nedåt. Nedan finns implementeringskoden för att rulla med Pixel eller använda 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..'); } }
Utgången från ovanstående kod:
Ovanstående bild visar nedrullning utförd av pixelvärde som nämns i ovanstående kod med 70 (nedåt). På samma sätt utförs sedan upprullning genom att tillhandahålla pixelvärde = -50 (dvs. uppåt).
Bilden nedan visar bläddra uppåt (med 50):
Således har vi i den här metoden använt JavascriptExecutor och utfört Scroll upp och ner genom att tillhandahålla pixelvärden.
Exempel / applikationer
Det finns många applikationer eller exempel på rullningslister. Få av dem är som beskrivs nedan:
# 1) Scrollfält i Excel-filer:
Som vi vet att Excel-filer har en enorm mängd data lagrad i sig. Det blir svårt att se hela innehållet på en sida. Följaktligen kan rullning hjälpa användaren att se data som inte finns på den aktuella skärmen.
vad är min routerinloggning och mitt lösenord
# 2) Bläddra i Anteckningar
I ovanstående bild kan rullningsfält ses horisontellt och vertikalt, vilket ger fullständig synlighet för data i anteckningsblockdokumentet.
# 3) Användning av rullningsfältet i webbläsare
När vi läser data kan vi bara se halv data på webbläsarens skärm. Bläddring hjälper till att flytta framåt och bakåt för att ha hela vyn. Därför, genom att använda horisontella och vertikala rullningsfält, kan hela webbläsarens skärminnehåll visas.
Det finns många fler sådana exempel som hjälper användarna att se den fullständiga informationen som visas på skärmen.
Slutsats
I den här handledningen har vi lärt oss om rullningsfält, deras typer. Vi har också sett att skapa och använda rullningsfältet i HTML-sidan
Vi har förstått metoderna för att implementera kod för hantering av rullningslister med hjälp av Selen, dvs inbyggt rullningsalternativ / användning av åtgärdsklass och användning av JavascriptExecutor / av Pixel och har gått igenom några applikationer där rullningsfält ofta används.
=> Läs igenom hela Selen-guiden
Rekommenderad läsning
- Hur man hanterar varningar / popup-fönster i Selen WebDriver - Selen Tutorial # 16
- Hur man laddar upp fil med Selenium Webdriver - 3 metoder
- Hur man väljer radioknappar i Selen WebDriver?
- Hur man kör Selen WebDriver i olika populära webbläsare
- Hantering av iFrames med Selenium WebDriver switchTo () -metod
- Guide för att generera omfattande rapporter i Selen WebDriver
- XPath-axlar för dynamisk XPath i Selen WebDriver
- Integrering av Jenkins med Selenium WebDriver: Steg-för-steg-handledning