Selēna veidlapa WebElement: TextBox, Button, sendkeys (), noklikšķiniet ()

Veidlapas ir galvenie tīmekļa elementi, lai saņemtu informāciju no vietnes apmeklētājiem. Tīmekļa veidlapās ir dažādi GUI elementi, piemēram, tekstlodziņi, paroles lauki, izvēles rūtiņas, radio pogas, nolaižamās izvēlnes, failu ievades utt.

Mēs redzēsim, kā piekļūt šiem dažādajiem formas elementiem, izmantojot Selenium Web Driver ar Java. Selēns katru formas elementu iekapsulē kā WebElement objektu. Tas nodrošina API, lai atrastu elementus un rīkotos ar tiem, piemēram, ievadot tekstu tekstlodziņos, noklikšķinot uz pogām utt. Mēs redzēsim metodes, kas pieejamas, lai piekļūtu katram veidlapas elementam.

Šajā apmācībā mēs redzēsim, kā identificēt šādus veidlapas elementus

  • Ievads WebElement, findElement (), findElements ()
  • Ievades lodziņš
  • Vērtību ievadīšana ievades lodziņos
  • Vērtību dzēšana ievades lodziņos
  • Pogas
  • Iesniegt pogas
  • Pilnīgs kods
  • Problēmu novēršana

Ievads WebElement, findElement (), findElements ()

Selenium Web Driver vienkāršu veidlapas elementu iekapsulē kā WebElement objektu .

Ir dažādas metodes, ar kurām WebDriver identificē formas elementus, pamatojoties uz dažādām tīmekļa elementu īpašībām, piemēram, ID, nosaukums, klase, XPath, taga nosaukums, CSS atlasītāji, saites teksts utt.

Web draiveris piedāvā šādas divas WebElement metodes, lai atrastu elementus.

  • findElement () - atrod vienu tīmekļa elementu un atgriežas kā WebElement Selenium objekts.
  • findElements () - atgriež WebElement objektu sarakstu, kas atbilst lokatora kritērijiem.

Apskatīsim koda fragmentus, lai iegūtu vienu elementu - teksta lauku tīmekļa lapā kā WebElement objektu, izmantojot metodi findElement (). Mēs aplūkosim metodi findElements () vairāku elementu atrašanai nākamajās apmācībās.

1. darbība: mums ir jāimportē šī pakotne, lai izveidotu tīmekļa elementu objektus

2. solis: Mums jāizsauc metode FindElement (), kas pieejama WebDriver klasē, un jāiegūst WebElement objekts.

Skatiet tālāk, lai redzētu, kā tas tiek darīts.

Ievades lodziņš

Ievades lodziņi attiecas uz vienu no šiem diviem veidiem:

  1. Teksta lauki - selēna ievades teksta lodziņi, kas pieņem ierakstītas vērtības un parāda tās tādas, kādas tās ir.
  2. Paroles lauki - tekstlodziņi, kas pieņem ierakstītas vērtības, bet maskē tās kā īpašo rakstzīmju sēriju (parasti punkti un zvaigznītes), lai izvairītos no sensitīvām vērtībām, kuras jāparāda.

Lokatori

Metode findElement () ņem vienu parametru, kas ir elementa lokators. Dažādi lokatori, piemēram, By.id (), By.name (), By.xpath (), By.CSSSelector () utt., Atrod lapas elementus, izmantojot to rekvizītus, piemēram, "ID", vārdu vai ceļu, utt.

Varat izmantot spraudņus, piemēram, Fire path, lai saņemtu palīdzību, lai iegūtu elementu id, xpath utt.

Izmantojot tālāk sniegto vietnes http://demo.guru99.com/test/login.html piemēru, ir kods, lai atrastu teksta lauku "E-pasta adrese", izmantojot ID lokatoru, un lauku "Parole", izmantojot vārdu lokatoru.

  1. E-pasta teksta lauks atrodas pēc Id
  2. Paroles lauks atrodas pēc nosaukuma

sūtņi selēnā

sendkeys () Selenium ir metode, ko izmanto, lai testa izpildes laikā teksta un paroles laukos ievadītu rediģējamu saturu. Šie lauki tiek identificēti, izmantojot lokatorus, piemēram, vārdu, klasi, ID utt. Tā ir tīmekļa elementā pieejamā metode. Atšķirībā no tipa metodes sendkeys () metode neaizstāj esošo tekstu nevienā tekstlodziņā.

Vērtību ievadīšana ievades lodziņos

Lai ievadītu tekstu teksta laukos un paroles laukos, sendKeys () ir metode, kas ir pieejama WebElement Selenium.

Izmantojot to pašu vietnes http://demo.guru99.com/test/login.html vietnes piemēru, šeit ir norādīts, kā mēs atrodam laukus Teksts un Parole un ievadām tekstu Selenium.

  1. Izmantojot ID lokatoru, atrodiet teksta lauku "E-pasta adrese".
  2. Izmantojot vārdu lokatoru, atrodiet lauku “Parole”
  3. Ievadiet tekstu "E-pasta adresē", izmantojot selēna sūtīšanas taustiņu metodi.
  4. Ievadiet paroli laukā "Parole", izmantojot metodi sendKeys ().

Vērtību dzēšana ievades lodziņos

Skaidrs () metode tiek izmantota, lai izdzēstu tekstu ievades lodziņā. Šai metodei nav nepieciešams parametrs . Zemāk esošais koda fragments tekstu no laukiem E-pasts vai Parole notīrīs

Pogas

Klikšķa pogai Selenium var piekļūt, izmantojot metodi click ().

Iepriekš minētajā piemērā

  1. Atrodiet pogu, lai pierakstītos
  2. Lai pieteiktos vietnē, vietnes pieteikšanās lapā noklikšķiniet uz pogas “Pierakstīties”.

Iesniegt pogas

Iesniegšanas pogas tiek izmantotas, lai serverim iesniegtu visu veidlapu. Tīmekļa elementā mēs varam izmantot klikšķa () metodi kā parastu pogu, kā mēs to izdarījām iepriekš, vai arī izmantot iesniegšanas () metodi jebkuram tīmekļa elementam formā vai pašā pogā Iesniegt.

Ja tiek izmantots Iesūtīšana (), WebDriver uzmeklēs DOM, lai uzzinātu, kurai formai elements pieder, un pēc tam aktivizēs tā iesniegšanas funkciju.

Pilnīgs kods

Šeit ir pilns darba kods

importēt org.openqa.selenium.By;importēt org.openqa.selenium.WebDriver;importēt org.openqa.selenium.chrome.ChromeDriver;importa org.openqa.selenium. *;sabiedrības klases veidlapa {public static void main (String [] args) {// objektu / mainīgo deklarēšana un instancēšanaSystem.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");WebDriver draiveris = jauns ChromeDriver ();String baseUrl = "http://demo.guru99.com/test/login.html";draiveris.get (baseUrl);// Iegūstiet WebElement, kas atbilst e-pasta adresei (TextField)WebElement e-pasts = driver.findElement (By.id ("e-pasts"));// Iegūstiet WebElement, kas atbilst laukam ParoleWebElement parole = driver.findElement (By.name ("passwd"));email.sendKeys (" Šī e-pasta adrese ir aizsargāta pret mēstuļošanu (spam), Jūsu pārlūkam ir jābūt iespējotam Javascript, lai to aplūkotu.");parole.sendKeys ("abcdefghlkjl");System.out.println ("Teksta lauku kopa");// Vērtību dzēšana tekstlodziņāe-pasts.skaidrs ();parole.skaidrs ();System.out.println ("Teksta lauks notīrīts");// Atrodiet pogu IesniegtWebElement pieteikšanās = driver.findElement (By.id ("SubmitLogin"));// Veidlapas iesniegšanai tiek izmantota klikšķu metodeemail.sendKeys (" Šī e-pasta adrese ir aizsargāta pret mēstuļošanu (spam), Jūsu pārlūkam ir jābūt iespējotam Javascript, lai to aplūkotu."); parole.sendKeys ("abcdefghlkjl"); login.click (); System.out.println ("Pieteikšanās pabeigta ar klikšķi"); // izmantojot iesniegšanas metodi, lai iesniegtu veidlapu. Iesniegt, kas izmantots paroles laukā driver.get (baseUrl); driver.findElement (By.id ("e-pasts")). sendKeys (" Šī e-pasta adrese ir aizsargāta pret mēstuļošanu (spam), Jūsu pārlūkam ir jābūt aktivizētam Javascript, lai to aplūkotu."); driver.findElement (By.name ("passwd")). sendKeys ("abcdefghlkjl"); driver.findElement (By.id ("SubmitLogin")). Iesniegt (); System.out.println ("Pieteikšanās pabeigta ar iesniegšanu"); //vadītājs.slēgt (); }}

Problēmu novēršana

Ja elementu atrašanas laikā sastopaties ar NoSuchElementException (), tas nozīmē, ka elements nav atrodams lapā brīdī, kad tīmekļa draiveris piekļuva lapai.

  1. Vēlreiz pārbaudiet lokatoru, izmantojot pārlūku Firepath vai Inspect Element pārlūkā Chrome.
  2. Pārbaudiet, vai kodā izmantotā vērtība atšķiras no Firepath elementa vērtības.
  3. Dažas īpašības ir dinamiskas dažiem elementiem. Ja konstatējat, ka vērtība ir atšķirīga un dinamiski mainās, apsveriet iespēju izmantot uzticamākus, bet sarežģītus veidus By.xpath () vai By.cssSelector ().
  4. Dažreiz tas var būt arī gaidīšanas jautājums, ti, tīmekļa draiveris izpildīja jūsu kodu pat pirms lapas pilnīgas ielādes utt.
  5. Pievienojiet gaidīšanu pirms findElement (), izmantojot netiešas vai tiešas gaidīšanas.

Kopsavilkums

  • Zemāk esošajā tabulā ir apkopotas komandas, lai piekļūtu katram iepriekš apspriestajam elementa tipam
Elements Komanda Apraksts
Ievades lodziņš sendKeys () izmanto, lai ievadītu vērtības tekstlodziņos
skaidrs () izmanto, lai notīrītu teksta lodziņus no pašreizējās vērtības
Saites klikšķis() izmanto, lai noklikšķinātu uz saites un gaidītu lapas ielādes pabeigšanu, pirms pāriet uz nākamo komandu.
Iesniegt pogu Iesniegt()
  • WebDriver ļauj atlasīt vairākas opcijas vairākos SELECT elementos.
  • Iesniegšanas () metodi varat izmantot jebkuram veidlapas elementam. WebDriver automātiski aktivizēs tās formas iesniegšanas funkciju, kurai pieder šis elements.

Interesanti raksti...