Mi az az objektumtár?
Az objektumtár az összes objektum közös tárhelye. A Selenium WebDriver kontextusban az objektumok általában azok a lokátorok lennének, amelyeket a webes elemek egyedi azonosításához használnak.
Az objektumtár használatának legfőbb előnye az objektumok elkülönítése a tesztesetektől. Ha egy webelement lokátorértéke megváltozik, akkor csak az objektumtárat kell megváltoztatni, nem pedig minden olyan tesztesetben, amelyben a helymeghatározót használták. Az objektumtár fenntartása növeli a keretrendszer megvalósításának modularitását.
Ebben az oktatóanyagban megtanulja-
- Mi az az objektumtár?
- Az objektumtárak típusai a Selenium webillesztő-programban
- Selenium Web Driver Objektumtár a Tulajdonságok fájl segítségével
- Szelén WebDriver objektumtár XML fájl használatával
Az objektumtárak típusai a Selenium webillesztő-programban
A Selenium WebDriver alapértelmezés szerint nem kínál beépített objektumtárat. Az objektumtárak azonban felépíthetők a kulcs-érték páros megközelítéssel, ahol a kulcs az objektumnak adott névre vonatkozik, az érték pedig azokra a tulajdonságokra utal, amelyeket az objektum egyedi azonosításához használnak a weboldalon.
Az alábbiakban a Selenium WebDriver programban hozhatók létre az objektumtárak típusai.
- Objektumtár a Tulajdonságok fájl használatával
- Objektumtár XML fájl használatával
Selenium Web Driver Objektumtár a Tulajdonságok fájl segítségével
Ebben a megközelítésben a tulajdonságfájl egy szöveges fájl, amelyben az adatokat kulcs-érték párok formájában tárolják. Az alábbi oktatóanyag a következő témákkal foglalkozik.
- Tulajdonságfájl létrehozása a napfogyatkozásban
- Adatok tárolása a tulajdonságfájlba
- Adatok olvasása a tulajdonságfájlból
- Tulajdonságfájl használata tesztfájlokban
1. lépés: Tulajdonságfájl létrehozása az eclipse-ben
- Először is, az alábbi java projektstruktúrát el kell készíteni a napfogyatkozásban. A projekt neve és a csomag neve bármilyen érvényes név lehet.
- Kattintson a jobb gombbal a projekt fő mappájára, és válassza az Új-> Egyéb lehetőséget
- A következő ablakban válassza az Általános -> Fájl lehetőséget, és kattintson a "Tovább" gombra
- Adjon meg egy érvényes fájlnevet „.properties” kiterjesztéssel az új fájlerőforrás ablakban, majd kattintson a „Befejezés” gombra
- Az „application.properties” nevű fájlt meg kell jeleníteni a Projektszerkezetben
2. lépés: Adatok tárolása a tulajdonságfájlba
- Az adatokat a tulajdonságfájlban kulcs-érték párok formájában tárolják, a kulcs a fájlban egyedülálló.
- Megpróbáljuk használni a tulajdonságfájlt a webelemek azonosítására a lokátorértékek segítségével.
- Nyissa meg az application.properties fájlt az Eclipse alkalmazásban, és tárolja a következő adatokat
MobileTesting = // a [text () = 'MOBIL TESZTELÉS]]EmailTextBox = philadelphia-field-emailSignUpButton = philadelphia-field-submit
4) Ehhez az oktatóanyaghoz a következő bemutató webhelyet használják: http://demo.guru99.com/test/guru99home/. Itt van a teszt forgatókönyv:
- Kattintson a Mobil tesztelés linkre az XPATH használatával
- Navigáljon vissza
- Írja be az adatokat az e-mail szövegmezőbe az azonosító használatával
- Kattintson a Feliratkozás gombra az ID használatával
3. lépés: Adatok olvasása a tulajdonságfájlból
- Az adatok olvasása a tulajdonságfájlból a java.util csomagban található beépített Properties osztály használatával történhet.
- Kezdetben a Tulajdonságok osztály objektumát az alábbiak szerint kell létrehozni
Tulajdonságok obj = új Tulajdonságok ();
- Létre kell hoznunk a FileInputStream osztály objektumát a tulajdonságok fájl elérési útjával
FileInputStream objfile = új FileInputStream (System.getProperty ("user.dir") + "\\ application.properties");
- Az adatok olvasása a tulajdonságfájlból történhet a java Properties osztály által kínált betöltési módszerrel. Az alábbi kód bemutatja a betöltési módszer használatát.
Tulajdonságok obj = új Tulajdonságok ();FileInputStream objfile = új FileInputStream (System.getProperty ("user.dir") + "\\ application.properties");obj.load (objfile);String mobileTesting = obj.getProperty ("MobileTesting");
A „mobileTesting” karaktersorozat tartalmazza az XPATH-t, hogy azonosítsa a weboldalon található mobil tesztelési linket.
4. lépés: Tulajdonságfájl használata tesztfájlokban
A Tulajdonságok fájl tesztszkriptekben használható úgy, hogy adatokat olvas ki egy tulajdonságfájlból, és az adatokat paraméterként továbbítja a findElement metódushoz. Az alábbi kód bemutatja a tulajdonságfájlból leolvasott adatok használatát a tesztfájlokban.
driver.findElement (By.xpath (obj.getProperty ("MobileTesting"))). kattintson ();driver.findElement (By.id (obj.getProperty ("EmailTextBox"))). sendKeys (" Ez az e-mail cím védett a spam robotoktól. A megtekintéshez engedélyezni kell a Javascriptet.");driver.findElement (By.id (obj.getProperty ("SignUpButton")))). kattintson ();
Az alábbiakban bemutatjuk a fenti teszthelyzethez használt teljes kódot.
com.objectrepository.demo csomag;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.util.Tulajdonságok;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;nyilvános osztály DemoOR {public static void main (String [] args) dobja az IOException {// WebDriver-példány létrehozásaWebDriver illesztőprogram;System.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");illesztőprogram = new ChromeDriver ();driver.get ("http://demo.guru99.com/test/guru99home/");driver.manage (). window (). maximize ();// Betölti a tulajdonságok fájltTulajdonságok obj = új Tulajdonságok ();FileInputStream objfile = új FileInputStream (System.getProperty ("user.dir") + "\\ application.properties");obj.load (objfile);// Keresse meg a Mobil tesztelés és a Vissza összekapcsolásátdriver.findElement (By.xpath (obj.getProperty ("MobileTesting"))). kattintson ();driver.navigate (). back ();// Adja meg az űrlapotdriver.findElement (By.id (obj.getProperty ("EmailTextBox"))). sendKeys (" Ez az e-mail cím védett a spam robotoktól. A megtekintéshez engedélyezni kell a Javascriptet.");driver.findElement (By.id (obj.getProperty ("SignUpButton")))). kattintson ();}}
Szelén WebDriver objektumtár XML fájl használatával
Az XML jelentése Extensible Markup Language. Egy XML fájl alapja a Document Object Model (DOM). Az XML fájlformátum megismétli azt a HTML formátumot, amelyre a weboldal épül. Az alábbiakban felsoroljuk a tárgyalt témákat.
- XML fájl létrehozása a napfogyatkozásban
- Adatok tárolása XML fájlra
- Adatok olvasása XML fájlból
- XML fájl használata teszt szkriptekben
1. lépés: XML-fájl létrehozása az eclipse-ben
- Az alábbi java projektstruktúrát létre kell hozni az Eclipse programban.
- Kattintson a jobb gombbal a projekt mappára, válassza az Új -> Egyéb lehetőséget
- Válassza ki az XML fájlt az XML mappában, és kattintson a "Tovább" gombra
- Írjon be egy érvényes XML fájlnevet, és kattintson a 'Befejezés' gombra
- XML fájl kerül a projekt mappába, az alábbiak szerint
2. lépés: Adatok tárolása XML fájlra
Az adatok XML fájlban tárolhatók dokumentum objektum modell (DOM) formájában. Az egyszerűség kedvéért az alábbi tesztforgatókönyvet használhatjuk példaként.
- Kattintson a Mobil tesztelés linkre az XPATH használatával
- Lépjen a Vissza a kezdőlapra elemre
- Írja be az adatokat az e-mail szövegmezőbe az azonosító használatával
- Kattintson a Feliratkozás gombra az ID használatával
Az alábbiakban az XML fájl formátumát kell használni.
Tárolja a fenti XML-kódot a properties.xml fájlban
A design fülön látni fogja
3. lépés: Adatok olvasása XML fájlból
1. Az adatok olvasása XML fájlból a java beépített 'dom4j' osztályának használatával valósítható meg. Kérjük, vegye figyelembe, hogy a kód folytatása előtt hozzá kell adnia az alábbi JAR fájlokat a projekt építési útvonalához.
- jaxen.jar
- dom4j-1.6.jar
2. Az alábbiakban az XML fájl adatainak kiolvasására szolgáló kód található.
File inputFile = új fájl (System.getProperty ("user.dir") + "\\ properties.xml");SAXReader saxReader = új SAXReader ();Dokumentumdokumentum = saxReader.read (inputFile);Karakterlánc mobileTesting = document.selectSingleNode ("// menu / mobiletesting"). GetText ();String emailTextBox = document.selectSingleNode ("// menü / e-mail"). GetText ();String signUpButton = document.selectSingleNode ("// menü / regisztráció"). GetText ();
3. Kezdetben létre kell hoznunk egy File objektumot, és paraméterként át kell adnunk a SAXReader osztály 'read' metódusának. Miután az XML fájl adatait sikeresen elolvastuk, hozzáférhetünk az XML dokumentum egyes csomópontjaihoz a 'selectSingleNode' módszerrel.
4. lépés: XML fájl használata teszt szkriptekben
Az XML fájlt tesztszkriptekben lehet használni, ha adatokat olvasunk le az XML fájlból, és az adatokat paraméterként továbbítjuk a findElement metódushoz. Az alábbi kód bemutatja az XML fájlból olvasott adatok felhasználását a tesztfájlokban.
driver.findElement (By.xpath (mobileTesting)). kattintson ();driver.findElement (By.id (emailTextBox)). sendKeys (" Ez az e-mail cím védett a spam robotoktól. A megtekintéshez engedélyezni kell a Javascriptet.");driver.findElement (By.id (signUpButton)). kattintson ();
Az alábbi kód bemutatja az XML fájl használatát a szelén WebDriver programban
com.objectrepository.demo csomag;import java.io. *;import java.util. *;import org.dom4j. *;import org.dom4j.io.SAXReader;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;nyilvános osztály DemoORXML {public static void main (String [] args) dobja a DocumentException {// WebDriver-példány létrehozásaWebDriver illesztőprogram;System.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");illesztőprogram = new ChromeDriver ();driver.get ("http://demo.guru99.com/test/guru99home/");driver.manage (). window (). maximize ();// XML fájl olvasásaFile inputFile = új fájl (System.getProperty ("user.dir") + "\\ properties.xml");SAXReader saxReader = új SAXReader ();Dokumentumdokumentum = saxReader.read (inputFile);Karakterlánc mobileTesting = document.selectSingleNode ("// menu / mobiletesting"). GetText ();String emailTextBox = document.selectSingleNode ("// menü / e-mail"). GetText ();String signUpButton = document.selectSingleNode ("// menü / regisztráció"). GetText ();// Navigálás a mobil teszteléshez és visszadriver.findElement (By.xpath (mobileTesting)). kattintson ();driver.navigate (). back ();// Űrlapadatok megadásadriver.findElement (By.id (emailTextBox)). sendKeys (" Ez az e-mail cím védett a spam robotoktól. A megtekintéshez engedélyezni kell a Javascriptet.");driver.findElement (By.id (signUpButton)). kattintson ();}}
Töltse le a WebDriver Eclipse projektet
Összegzés:
- Az objektumtár az összes objektum közös tárhelye
- A Selenium WebDriver alapértelmezés szerint nem kínál beépített objektumtárat
- Kétféle objektumtárat hozhat létre a szelénben
- Objektumtár a Tulajdonságok fájl használatával
- Objektumtár XML fájl használatával
- A tulajdonságfájl egy szöveges fájl, amelyben az adatokat kulcs-érték párok formájában tárolják
- Az XML fájlformátum megismétli azt a HTML formátumot, amelyre a weboldal épül.