Što je spremište objekata?
Spremište objekata je zajedničko mjesto za pohranu svih objekata. U kontekstu Selenium WebDriver, objekti bi obično bili lokatori koji se koriste za jedinstveno prepoznavanje web elemenata.
Glavna prednost korištenja spremišta objekata je odvajanje objekata od test slučajeva. Ako se vrijednost lokatora jednog webelementa promijeni, treba promijeniti samo spremište objekata, a ne mijenjati ga u svim testnim slučajevima u kojima je lokator korišten. Održavanje spremišta objekata povećava modularnost implementacije okvira.
U ovom vodiču naučit ćete-
- Što je spremište objekata?
- Vrste spremišta za objekte u upravljačkom programu Selenium
- Spremište predmeta Selenium Web Driver pomoću datoteke Svojstva
- Spremište objekata Selenium WebDriver pomoću XML datoteke
Vrste spremišta za objekte u upravljačkom programu Selenium
Selenium WebDriver prema zadanim postavkama ne nudi ugrađeno spremište objekata. Međutim, spremišta objekata mogu se graditi primjenom pristupa par ključ / vrijednost, pri čemu se ključ odnosi na ime dato objektu, a vrijednost se odnosi na svojstva koja se koriste za jedinstvenu identifikaciju objekta unutar web stranice.
Slijede vrste spremišta objekata koje se mogu stvoriti u programu Selenium WebDriver.
- Spremište objekata pomoću datoteke Svojstva
- Spremište objekata pomoću XML datoteke
Spremište predmeta Selenium Web Driver pomoću datoteke Svojstva
U ovom pristupu datoteka svojstava je tekstualna datoteka u kojoj se podaci pohranjuju u obliku parova ključ / vrijednost. Sljedeći vodič obradit će sljedeće teme.
- Stvaranje datoteke svojstava u eclipseu
- Pohranjivanje podataka u datoteku svojstava
- Čitanje podataka iz datoteke svojstava
- Korištenje datoteke svojstava u test skriptama
Korak 1) Stvaranje datoteke svojstava u eclipseu
- Za početak, donju strukturu java projekta treba stvoriti u eclipseu. Naziv projekta i naziv paketa mogu biti bilo koja valjana imena.
- Desnom tipkom miša kliknite glavnu mapu projekta i odaberite Novo-> Ostalo
- U sljedećem prozoru odaberite Općenito -> Datoteka i kliknite gumb "Dalje"
- Navedite važeći naziv datoteke s nastavkom ".properties" u novom prozoru resursa datoteke i kliknite gumb "Završi"
- Datoteka pod nazivom 'application.properties' mora biti prikazana na strukturi projekta
Korak 2) Pohranjivanje podataka u datoteku svojstava
- Podaci se pohranjuju u datoteku svojstava u obliku parova ključ / vrijednost, s tim da je ključ jedinstven u cijeloj datoteci.
- Pokušat ćemo upotrijebiti datoteku svojstava za prepoznavanje webelemenata pomoću vrijednosti lokatora.
- Otvorite datoteku application.properties u Eclipseu i spremite sljedeće podatke
MobileTesting = // a [text () = 'MOBILNO TESTIRANJE']EmailTextBox = philadelphia-field-emailSignUpButton = philadelphia-field-submit
4) Za ovaj se vodič koristi sljedeće demo web mjesto: http://demo.guru99.com/test/guru99home/. Evo scenarija testa:
- Kliknite vezu Mobile Testing koristeći XPATH
- Vrati se natrag
- Unesite podatke u tekstni okvir e-pošte pomoću ID-a
- Kliknite gumb Prijavi se pomoću ID-a
Korak 3) Čitanje podataka iz datoteke svojstava
- Čitanje podataka iz datoteke svojstava može se izvršiti pomoću ugrađene klase Svojstva koja se nalazi u paketu java.util.
- U početku treba stvoriti objekt klase Svojstva kao što je prikazano u nastavku
Svojstva obj = nova svojstva ();
- Moramo stvoriti objekt klase FileInputStream s stazom do datoteke svojstava
FileInputStream objfile = novi FileInputStream (System.getProperty ("user.dir") + "\\ application.properties");
- Čitanje podataka iz datoteke svojstava može se izvršiti metodom učitavanja koju nudi klasa Svojstva u javi. Sljedeći kod prikazuje upotrebu metode učitavanja.
Svojstva obj = nova svojstva ();FileInputStream objfile = novi FileInputStream (System.getProperty ("user.dir") + "\\ application.properties");obj.load (objfile);Niz mobileTesting = obj.getProperty ("MobileTesting");
Niz 'mobileTesting' sadržavat će XPATH za identifikaciju veze za mobilno testiranje unutar web stranice.
Korak 4) Korištenje datoteke svojstava u test skriptama
Datoteka svojstava može se koristiti u testnim skriptama čitanjem podataka iz datoteke svojstava i prosljeđivanjem podataka kao parametra na metodu findElement. Sljedeći kod prikazuje upotrebu podataka pročitanih iz datoteke svojstava u test skriptama.
driver.findElement (By.xpath (obj.getProperty ("MobileTesting"))). click ();driver.findElement (By.id (obj.getProperty ("EmailTextBox"))). sendKeys (" Ova adresa e-pošte zaštićena je od neželjenih robota, potreban vam je omogućen JavaSkript da biste je vidjeli.");driver.findElement (By.id (obj.getProperty ("SignUpButton"))). click ();
Ispod je cjeloviti kod korišten za gornji scenarij ispitivanja.
paket com.objectrepository.demo;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.util.Properties;uvoz org.openqa.selenium.By;uvoz org.openqa.selenium.WebDriver;uvoz org.openqa.selenium.chrome.ChromeDriver;javni razred DemoOR {public static void main (String [] args) baca IOException {// Stvaranje instance WebDriverUpravljački program za WebDriver;System.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");upravljački program = novi ChromeDriver ();driver.get ("http://demo.guru99.com/test/guru99home/");driver.manage (). window (). maximize ();// Učitaj datoteku svojstavaSvojstva obj = nova svojstva ();FileInputStream objfile = novi FileInputStream (System.getProperty ("user.dir") + "\\ application.properties");obj.load (objfile);// Nagigate za povezivanje mobilnog testiranja i natragdriver.findElement (By.xpath (obj.getProperty ("MobileTesting"))). click ();driver.navigate (). back ();// Unesite podatke u obrazacdriver.findElement (By.id (obj.getProperty ("EmailTextBox"))). sendKeys (" Ova adresa e-pošte zaštićena je od neželjenih robota, potreban vam je omogućen JavaSkript da biste je vidjeli.");driver.findElement (By.id (obj.getProperty ("SignUpButton"))). click ();}}
Spremište objekata Selenium WebDriver pomoću XML datoteke
XML je skraćenica od Extensible Markup Language. XML datoteka koristi objektni model dokumenta (DOM) kao osnovnu strukturu. XML format datoteke replicirat će HTML format na kojem je web stranica izgrađena. Ispod je popis tema koje će biti obrađene.
- Stvaranje XML datoteke u eclipseu
- Pohranjivanje podataka u XML datoteku
- Čitanje podataka iz XML datoteke
- Korištenje XML datoteke u test skriptama
Korak 1) Stvaranje XML datoteke u eclipseu
- Sljedeću strukturu java projekta treba stvoriti u Eclipseu.
- Desnom tipkom miša kliknite mapu projekta, odaberite Novo -> Ostalo
- Odaberite XML datoteku unutar XML mape i kliknite gumb 'Dalje'
- Unesite važeći naziv XML datoteke i kliknite gumb "Završi"
- XML datoteka bit će dodana u mapu projekta kao što je prikazano u nastavku
Korak 2) Pohranjivanje podataka u XML datoteku
Podaci se mogu pohraniti u XML datoteku u obliku objektnog modela dokumenta (DOM). Radi jednostavnosti, kao primjer možemo koristiti donji testni scenarij.
- Kliknite vezu Mobile Testing koristeći XPATH
- Vratite se na početnu stranicu
- Unesite podatke u tekstni okvir e-pošte pomoću ID-a
- Kliknite gumb Prijavi se pomoću ID-a
Ispod je format XML datoteke koja će se koristiti.
Pohranite gore navedeni XML kôd u svojstva.xml
Na kartici dizajna vidjet ćete
Korak 3) Čitanje podataka iz XML datoteke
1. Čitanje podataka iz XML datoteke može se izvršiti pomoću ugrađene klase 'dom4j' u javi. Imajte na umu da morate dodati dolje JAR datoteke u put izgradnje vašeg projekta prije nego što nastavite s kodom.
- jaxen.jar
- dom4j-1.6.jar
2. Ispod je kod za čitanje podataka iz XML datoteke.
File inputFile = nova datoteka (System.getProperty ("user.dir") + "\\ properties.xml");SAXReader saxReader = novi SAXReader ();Dokument dokumenta = saxReader.read (inputFile);Niz mobileTesting = document.selectSingleNode ("// izbornik / mobiletesting"). GetText ();Niz emailTextBox = document.selectSingleNode ("// izbornik / e-pošta"). GetText ();Niz signUpButton = document.selectSingleNode ("// izbornik / prijava"). GetText ();
3. U početku trebamo stvoriti objekt File i proslijediti ga kao parametar metodi 'čitanja' klase SAXReader. Nakon što se podaci o XML datoteci uspješno pročitaju, možemo pristupiti pojedinačnim čvorovima XML dokumenta pomoću metode 'selectSingleNode'.
Korak 4) Korištenje XML datoteke u test skriptama
XML datoteka može se koristiti u testnim skriptama čitanjem podataka iz XML datoteke i prosljeđivanjem podataka kao parametra na metodu findElement. Sljedeći kôd prikazuje upotrebu podataka pročitanih iz XML datoteke u testnim skriptama.
driver.findElement (By.xpath (mobileTesting)). click ();driver.findElement (By.id (emailTextBox)). sendKeys (" Ova adresa e-pošte zaštićena je od neželjenih robota, potreban vam je omogućen JavaScript da biste je vidjeli.");driver.findElement (By.id (signUpButton)). click ();
Sljedeći kod prikazuje upotrebu XML datoteke u selenium WebDriveru
paket com.objectrepository.demo;import java.io. *;uvoz java.util. *;uvoz org.dom4j. *;import org.dom4j.io.SAXReader;uvoz org.openqa.selenium.By;uvoz org.openqa.selenium.WebDriver;uvoz org.openqa.selenium.chrome.ChromeDriver;javna klasa DemoORXML {public static void main (String [] args) baca DocumentException {// Stvaranje instance WebDriverUpravljački program za WebDriver;System.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");upravljački program = novi ChromeDriver ();driver.get ("http://demo.guru99.com/test/guru99home/");driver.manage (). window (). maximize ();// Čitanje XML datotekeFile inputFile = nova datoteka (System.getProperty ("user.dir") + "\\ properties.xml");SAXReader saxReader = novi SAXReader ();Dokument dokumenta = saxReader.read (inputFile);Niz mobileTesting = document.selectSingleNode ("// izbornik / mobiletesting"). GetText ();Niz emailTextBox = document.selectSingleNode ("// izbornik / e-pošta"). GetText ();Niz signUpButton = document.selectSingleNode ("// izbornik / prijava"). GetText ();// Navigacija do mobilnog testiranja i natragdriver.findElement (By.xpath (mobileTesting)). click ();driver.navigate (). back ();// Unos podataka obrascadriver.findElement (By.id (emailTextBox)). sendKeys (" Ova adresa e-pošte zaštićena je od neželjenih robota, potreban vam je omogućen JavaScript da biste je vidjeli.");driver.findElement (By.id (signUpButton)). click ();}}
Preuzmite projekt WebDriver Eclipse
Sažetak:
- Spremište objekata je zajedničko mjesto za pohranu svih objekata
- Selenium WebDriver prema zadanim postavkama ne nudi ugrađeno spremište objekata
- Možete stvoriti 2 vrste spremišta objekata u seleniju
- Spremište objekata pomoću datoteke Svojstva
- Spremište objekata pomoću XML datoteke
- Datoteka svojstava je tekstualna datoteka u kojoj se podaci pohranjuju u obliku parova ključ / vrijednost
- XML format datoteke replicirat će HTML format na kojem je web stranica izgrađena.