Sendkeys i Selenium

Sendkeys i Selenium
Denne artikkelen fokuserer på Sendkeys () -metoden i Selenium. Den brukes til å sende dataene til nettleseren og samhandle med inngangsfeltet på nettstedet for å utføre en automatiseringstest. I denne artikkelen implementeres et automatisert påloggingsskjemaeksempel som mottar dataene gjennom Sendkeys () -metoden. For å gjøre dette utfører vi flere veldig viktige og nødvendige trinn i Java JDK og Eclipse ved å bruke Selenium Framework Code for programutførelse. Før vi skriver skriptet, har vi en tendens til å installere Java JDK og Eclipse, legge til Selenium Jars Libraries og TestNG -krukker, og konfigurere avhengighetene sammen med nettleserdriverne.

Sendkeys i Selenium WebDriver

Når vi jobber med automatiseringstestkontrollen gjennom selenkrukker, er vi ikke bare i stand til å hente dataene fra webelementene, men også i stand til å sende dataene til webelementene. SendKeys () er metoden i Selenium for å sende dataene som Int, Char og symboler inn i inngangsfeltet. De nåværende elementene på websiden som brukes til å identifisere elementene for å motta dataene, kalles lokatorer som element -ID, navn, klassenavn osv. Selenium -webdriver brukes til å samhandle mellom selenbibliotekene og nettleserne.

Det er to enkle trinn i Sendkeys () -metoden for å sende dataene inn i nettleseren:

  1. Det første trinnet er bruk av lokalisering for å identifisere de spesielle inngangsfeltene som søkeboks, e -postadresse, brukernavn, passord osv.
  2. Det andre trinnet er Sendkeys () -metoden.

Hvordan gi Selenium SendKeys -metoden til form

I denne opplæringen bruker vi innloggingsskjemaet “SWAGLABS”. Bruk SendKeys () -metoden for å gi verdien til "brukernavn" og "passord" inndatafelt og klikk automatisk inn i påloggingsknappen.

La oss diskutere trinn-for-trinn-prosessen for å utføre koden for påloggingsskjemaet.

Trinn 1: Nettsted som skal brukes

Tenk, for illustrasjon, en påloggingsbrukerkontoside som ligger på https: // www.Saucedemo.com/.

Et påloggingsskjema med "brukernavn" og "passord" -felt vises i forrige figur.

Nå må webdriveren gjenkjenne dem for at den automatisk skal fullføre dataene i begge felt. Som tidligere omtalt, kan lokalatorene også brukes til dette. Når vi har funnet de nødvendige delene, er alt som er igjen å bruke Sendkeys () -metoden for å eksplisitt levere de nødvendige verdiene.

Trinn 2: Konfigurer webdivermanageren

WebDriVerManager fungerer som et API i Selenium. Som tillater å automatisere styringen av Selenium WebDrivers 'forskjellige versjoner kompatibilitet som Chromedriver, Getkodriver og Firefox. Det sparer tiden ved å ikke laste ned og legge til bibliotekene til webdriverenes siste versjon.

Følgende skript for å konfigurere WebDRIVERManager må brukes:

WebDRIVERManager.Chromedriver ().oppsett ();

Trinn 3: Lag en offentlig tomromklasse

I dette trinnet begynner vi å skrive den faktiske koden. La oss opprette Void -klassen og passere Sendkeys () -metoden.

Følgende skript brukes til å opprette SendKey Class -navnet:

offentlig klasse SendKey

Trinn 4: Sett opp webdriveren

Webdrivere lar samspillet mellom Selenium og nettleser utføre nettautomatiseringstesten ved å hjelpe til med å sende og motta dataene.

I dette trinnet setter vi opp Chrome Browser -driveren gjennom følgende skript:

WebDRIVERManager.Chromedriver ().oppsett ();
Chromedriver Driver = new Chromedriver ();

Trinn 5: Bruk get () for å åpne websiden

I dette trinnet bruker vi get () -metoden for å åpne den gitte URL -nettstedet i Chrome -nettleseren.

Bruk følgende skriptmetode for å gjøre det:

sjåfør.få ("https: // www.Saucedemo.com/");

Det kan sees i den følgende figuren at Chrome styres av den automatiserte testprogramvaren.

Trinn 6: Få inngangsfeltene

For å få feltene, trenger vi lokatorer som navn, klasse og ID. I dette eksemplet brukes lokaliserings -IDen, noe som betyr å finne inngangsfeltet etter ID.

I den følgende figuren har inngangsfeltet for brukernavn ID = brukernavn .

I følgende figur har passordinndata -feltet ID = passord .

FindElement -metoden og etter klassen brukes til å lette ved automatisk å finne ID -ene på nettstedet.

Følgende skript brukes til å få inngangsfeltene:

sjåfør.FindElement (av.id ("brukernavn")).Sendkeys ("Standard_user");
sjåfør.FindElement (av.id ("passord")).Sendkeys ("Secret_sauce");

På denne måten kan du spesifisere elementene for å få inngangsfeltene.

Trinn 7: Få påloggingsknappen XPath

For å få innloggingsknappfeltet, trenger vi en XPath Locator.

Få xpath of the -knappen ved å følge trinnene:

> Nettsted> Inspiser> Høyreklikk på knappekode> Velg Kopier> Velg Full XPath

I dette trinnet brukes FindElement -metoden og etter klassen for å legge til rette for automatisk å finne XPath på stedet.

> FindElement (av.Xpath)
> Xpath:/html/body/div/div/div [2]/div [1]/div [1]/div/form/input

Følgende skript brukes til å få XPATH for innloggingen:

sjåfør.FindElement (av.xpath ("/html/body/div/div/div [2]/div [1]/div [1]/div/form/input")).klikk ();

Trinn 8: Lukk nettleseren

I det siste trinnet, når brukerkontoen er logget inn av den automatiserte Sendkeys verdisikkerhet, lukker du nettleseren ved å bruke .Lukk () Funksjon.

Slik kan du bruke close () -metoden:

sjåfør.Lukk();

Se følgende komplette kode og se utdataene:

pakke ui;
Import org.Openqa.Selen.Av;
Import org.Openqa.Selen.krom.Chromedriver;
Importer io.github.Bonigarcia.WDM.WebDriVerManager;
offentlig klasse SendKey
public static void main (String [] args)
WebDRIVERManager.Chromedriver ().oppsett ();
Chromedriver Driver = new Chromedriver ();
sjåfør.få ("https: // www.Saucedemo.com/");
sjåfør.FindElement (av.id ("brukernavn")).Sendkeys ("Standard_user");
sjåfør.FindElement (av.id ("passord")).Sendkeys ("Secret_sauce");
sjåfør.FindElement (av.xpath ("/html/body/div/div/div [2]/div [1]/div [1]/div/form/input")).klikk ();
sjåfør.Lukk();

I det forrige kodeeksemplet bruker vi lokaliserings -ID for å finne "brukernavnet" og "passord" ved hjelp av av.Lokatorklasse.

Etter å ha utført koden, identifiseres inngangsfeltene automatisk av lokalisatorene og fyller deretter verdiene automatisk i disse feltene ved å gi nøkkelverdiene gjennom Sendkeys ().

Etter å ha mottatt verdiene i inndatafeltene, klikker du på påloggingsknappen ved å hente xpathen til påloggingsknappen. Til slutt, logger du inn skjemaet. Nettleseren er lukket automatisk etter at brukerkontoen er logget inn.

Nå forstår du hvordan du kan gi Selenium SendKeys -metoden til form. La oss snakke om en annen illustrasjon der vi demonstrerer hvordan vi bruker SendKeys () -metoden i Selenium WebDriver for å laste opp en fil.

Hvordan laste opp en fil ved hjelp av Sendkeys () -metoden

Den enkleste teknikken for å laste opp en fil ved hjelp av Selenium WebDriver er Sendkeys -metoden. Tre enkle trinn kreves for dette:

Trinn 1: Velg en filknapp

I det første trinnet må vi velge "Velg fil" -knappen. Dette velger filen du vil laste opp. Kommandoen som velger en fil er gitt i følgende:

Webelement uploadMyFile = driver.FindElement (av.id ("velgeryfile"));

Her kan du se at vi har tatt ID -en som "velgerifil", og dette er for webelementet.

Trinn 2: Velg filen din

Velg nå filen fra datamaskinen du ønsker å laste opp. Gi plasseringen av filen på systemet vårt. Koden for å velge filen du skal laste opp er gitt her:

UploadMyElement.Sendkeys ("C: \\ myfile1.tekst");

Trinn 3: Last opp filen

For å laste opp filen, må du nå klikke på opplastingsknappen. Du må kjøre koden i den påfølgende linjen for å oppnå dette.

MyDriver.FindElement (av.id ("uploadmyfile")).klikk ();
Vi gir følgende komplette kode for din referanse:
pakketestkaser;
Importer Java.io.IOException;
Import org.Openqa.Selen.Av;
Import org.Openqa.Selen.Webdriver;
Import org.Openqa.Selen.Webelement;
Import org.Openqa.Selen.krom.Chromedriver;
Import org.testng.merknader.Test;
public class uploadMyFile
@Test
public void MyFileuPloadTest () kaster IOException
System.SetProperty ("Webdriver.krom.Driver "," C: \\ Work \\ Driver.exe ");
WebDriver MyDriver = new ChromedRriver ();
MyDriver.få ("https: // mysite.com ");
Webelement uploadMyFile = driver.FindElement (av.id ("velgeryfile"));
opplastingmyfile.Sendkeys ("C: \\ myfile1.tekst");
MyDriver.FindElement (av.id ("uploadmyfile")).klikk ();

I forrige kode kan du se at de nødvendige modulene er lastet først. Deretter opprettet vi en klasse der vi initierte driverobjektet. Dette lanserer nettleseren. Etter det velger vi "Velg fil" -knappen og spesifiser banen til filen som vi vil laste opp. Til slutt lastes filen lastet opp når vi klikker på knappen.

Konklusjon

Denne artikkelguiden illustrerer bruken av SendKeys () -metoden ved hjelp av Selenium Framework for å gi et brukernavn og passord til påloggingsskjemaet gjennom et automatisk kontrollverktøy. Ved hjelp av Java -språket skriver vi koden for å angi nettleserdriveren, starte nettleserdriveren og passere nøklene gjennom lokaliseringen som ID, XPath, og logge på kontoen. Til slutt demonstrerte vi resultatene i nettleseren som viser at Sendkeys () passerer inngangsfeltverdiene gjennom IDS. Klikk på påloggingsknappen automatisk. Til slutt, lukk nettleseren. Vi forklarte også hvordan du kan laste opp en spesifikk fil ved hjelp av Sendkeys () -metoden. Denne artikkelen inneholder all nødvendig informasjon for å hjelpe deg i gang.