Jelentkezzen be Selenium: A Log4j Properties fájl letöltése és használata
Miben van a Log4j? Selenium?
A Log4j egy gyors, rugalmas és megbízható naplózási keretrendszer (APIS), amely be van írva Java 1996 elején fejlesztették ki. Az alatt terjesztik Apache Szoftverlicenc. A Log4J a C-re lett portolva, C++, C#, Perl, Python, Rubin és Eiffel nyelvek. Ez egy kis és nagy méretekhez használt eszköz Selenium Automatizálási projektek.
Miért használja a Log4j-t?
- Ez egy nyílt forráskódú
- A Log4j-vel lehetőség van az áramlás részleteinek tárolására Selenium Automatizálás fájlban vagy adatbázisokban
- A Log4j-t nagy és kis projektekhez használják
- A Log4j-ben SOPL utasítások helyett log utasításokat használunk a kódban, hogy megismerjük a projekt állapotát, miközben az fut.
Log4j komponensek
Favágók
Felelős az információk naplózásáért. A loggerek projektbe való beépítéséhez a következő lépéseket kell végrehajtani
Hozzon létre egy példányt a naplózó osztályhoz
A favágó osztály a Java-alapú segédprogram, amely az összes általános metódust már megvalósította a log4j használatához
Határozza meg a Log4j szintet
Elsősorban ötféle naplószint létezik
- Mind – Ez a naplózási szint mindent naplóz (az összes naplót bekapcsolja)
- DEBUG – nyomtassa ki a hibakeresési információkat, és hasznos a fejlesztési szakaszban
- INFO – tájékoztató üzenet nyomtatása, amely kiemeli az alkalmazás folyamatát
- FIGYELMEZTETÉS – a rendszer hibás és váratlan viselkedésére vonatkozó információk nyomtatása.
- HIBA – hibaüzenet nyomtatása, amely lehetővé teheti a rendszer folytatását
- FATAL – olyan kritikus rendszerinformációk nyomtatása, amelyek az alkalmazás összeomlását okozzák
- KI – Nincs naplózás
Függelékek
A LogEvents célállomásra történő eljuttatására szolgál. Ez dönti el, hogy mi lesz a naplóinformációkkal. Egyszerűen fogalmazva, a naplók fájlba írására szolgál. Az alábbiakban néhány fajta függelék található
- A ConsoleAppender naplózza a szabványos kimenetet
- A Fájlcsatoló naplókat nyomtat bizonyos fájlokhoz
- Legnagyobb méretű fájlhoz gördülő fájl melléklet
Jegyzet: A log4j tulajdonságokban tetszőleges néven hívhatjuk az apendert. Vannak más függelékek is, de ezekre korlátozzuk.
elrendezések
Felelős a naplózási információk különböző stílusokban történő formázásáért.
A Logger osztály különböző módszereket biztosít a naplózási tevékenységek kezelésére. Két statikus módszert biztosít egy naplózó objektum megszerzésére.
Public static Logger getRootLogger() Public static Logger getLogger(String name)
Hogyan van beállítva a log4j?
A log4j beállításához el kell döntenünk, hogy melyik függeléket implementáljuk. Ennek megfelelően a függelék paraméterei be lesznek állítva.
- A DEBUG szintet és a RollingFileAppendert fogjuk használni
- Két konfigurációt vagy naplózást végzünk,
- Először is: root logger, amely az összes rendszer által generált naplót fájlnévben írja, pl Selenium.naplók
- Másodszor: A kézi parancsok által generált információkat kódban írja a Manual.logs fájlnévbe
#Gyökérnaplózó
log4j.rootLogger=DEBUG,file log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=D:\\Guru99\\src\\Selenium.logs log4j.appender.file.maxFileSize=900KB log4j.appender.file.maxBackupIndex=5 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c<strong>{1}</strong>:%L - %m%n log4j.appender.file.Append=false
#Alkalmazásnaplók
log4j.logger.devpinoyLogger=DEBUG, dest1 log4j.appender.dest1=org.apache.log4j.RollingFileAppender log4j.appender.dest1.maxFileSize=900KB log4j.appender.dest1.maxBackupIndex=6 log4j.appender.dest1.layout=org.apache.log4j.PatternLayout log4j.appender.dest1.layout.ConversionPattern=%d{dd/MM/yyyy HH:mm:ss} %c %m%n log4j.appender.dest1.File=D:\\ Guru99\\src\\Manual.logs log4j.appender.dest1.Append=false
A fenti példában a log4j-t úgy konfiguráltuk, hogy két különböző fájlba jelentkezzen be, amelyek néven: Selenium.log és Manual.log.
- file és dest1 a két azonosító.
- A „Fájl” a fájlnév megadására szolgál, amelybe a naplók mentésre kerülnek
- A „maxFileSize” a naplófájl maximális méretének beállítására szolgál. Amikor a fájl eléri ezt a méretet, egy új fájl jön létre ugyanazzal a névvel, és a régi fájlnév indexként kerül hozzá.
- A „maxBackupIndex” a biztonsági mentéshez szükséges fájlok maximális számának beállítására szolgál.
- Az „elrendezés” a naplófájl formátumának beállítására szolgál.
- Az „Append” a hozzáfűzés funkció beállítására szolgál. Ha hamisra van állítva, akkor minden alkalommal új fájl jön létre, nem pedig a régi fájl kerül felhasználásra a naplózáshoz
Hogyan használható a log4j a szkripten belül?
A kódban a „log”-ot használtuk referenciaváltozóként, amely a Logger Class getLogger metódusára hivatkozik
Logger log = Logger.getLogger("devpinoyLogger");
Használja a „log” hivatkozási változót és a hibakeresési módszert a kívánt információk naplózásához.
log.debug("--information--");
Mi az a LogExpert eszköz?
- LogExpert eszköz egy eszköz Windows a rönkök farkára fejlesztették ki
- Ez egy ingyenes és nyílt forráskódú naplónézegető.
- Ez egy naplóelemző eszköz, amely számos funkcióval rendelkezik, például kereséssel, szűréssel, könyvjelzőkkel és a naplók kiemelésével
- Az eszköz naplóiban a fájlok megnyitásakor automatikusan frissülnek
- Ebben az eszközben több naplófájlt is megnyithatunk különböző lapokon
- A könyvjelzőkhöz megjegyzéseket is tehetünk, és van egy gyorsbillentyű a különböző könyvjelzők közötti navigáláshoz. A teljes könyvjelzőlistát is láthatjuk, és onnan navigálhatunk
- Az eszköz parancsikonjai a súgófájlban találhatók, így az eszközre hivatkozni lehet.
Hogyan kell használni a Log4j-t Selenium
Step 1) In Eclipse hozzon létre egy új projektet log4j_demo néven
Step 2) Kattintson a jobb gombbal az src -> Build Path -> Build Path konfigurálása elemre
Step 3) Kattintson a Könyvtárak elemre, és a Log4J könyvtár hozzáadása elemre. Letöltheti innen https://logging.apache.org/log4j/1.2/download.html
Step 4) Hozzon létre egy új fájlt. Ez a fájl tartalmazza az összes log4j konfigurációt
- Kattintson jobb gombbal az src -> Új -> Egyéb -> Általános -> Fájl elemre
- Adja meg a fájl nevét: „log4j.properties”
- Kattintson a Befejezés gombra
Hozzon létre még két fájlt, és adjon nekik nevet, például Selenium.logs és Manual.logs. Ezek a fájlok tartalmazzák a rendszer által létrehozott összes naplót és a manuálisan naplózott utasításokat
Step 5) A log4j.properties fájlba másolja a teljes konfigurációt.
Step 6) Főosztály létrehozása:
- Kattintson jobb gombbal az alapértelmezett csomagra -> Új -> Osztály
- Adja meg az osztály nevét, és kattintson a Befejezés gombra
Step 7) Másolja be a következő kódot a fő osztályba
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.apache.log4j.Logger; public class LoggingDemo { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub WebDriver driver = new FirefoxDriver(); Logger log = Logger.getLogger("devpinoyLogger"); driver.get("https://healthunify.com/bmicalculator/"); log.debug("opening webiste"); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); log.debug("entring weight"); driver.findElement(By.name("wg")).sendKeys("87"); log.debug("selecting kilograms"); driver.findElement(By.name("opt1")).sendKeys("kilograms"); log.debug("selecting height in feet"); driver.findElement(By.name("opt2")).sendKeys("5"); log.debug("selecting height in inchs"); driver.findElement(By.name("opt3")).sendKeys("10"); log.debug("Clicking on calculate"); driver.findElement(By.name("cc")).click(); log.debug("Getting SIUnit value"); String SIUnit = driver.findElement(By.name("si")).getAttribute("value"); log.debug("Getting USUnit value"); String USUnit = driver.findElement(By.name("us")).getAttribute("value"); log.debug("Getting UKUnit value"); String UKUnit = driver.findElement(By.name("uk")).getAttribute("value"); log.debug("Getting overall description"); String note = driver.findElement(By.name("desc")).getAttribute("value"); System.out.println("SIUnit = " + SIUnit); System.out.println("USUnit = " + USUnit); System.out.println("UKUnit = " + UKUnit); System.out.println("note = " + note); driver.quit(); } }
A fenti kódban meglátogatjuk https://healthunify.com/bmicalculator/és ellenőrizze a BMI-kalkulátort. A megadott súly 87 kg, a magasság 5 láb 10 hüvelyk. A szkript ellenőrzi a kimenetet SE, US és UK egységekben.
A Logger.getLogger(“devpinoyLogger”) segítségével rendszerszintű naplókat készítünk
A log.debug módszerrel adatokat tárolunk a Manual.logban
Step 8) Futtassa a szkriptet. Nyissa meg a Manual és a helyét Selenium naplók a naplózási adatok ellenőrzéséhez.
Hogyan használható a LogExpert eszköz a naplók elemzésére
- Töltse le az eszközt innen https://github.com/zarunbal/LogExpert . Lépjen a LogExpert letöltési mappájába
- Nyissa meg a LogExpert.exe fájlt
- Kattintson a Fájl -> Megnyitás elemre, és tallózással keresse meg azt az elérési utat, ahol a Manual.log és Selenium.log fájlokat tárolnak. Válassza ki a fájlt
- Válassza a „Follow tail” opciót
A Follow tail opció kiválasztása lehetővé teszi a naplók végét, ami azt jelenti, hogy a LogExpert automatikusan frissíti a naplófájlt, amikor a szkript végrehajtási fázisban van. Ha bármilyen más szerkesztőt használunk, például a Jegyzettömböt, akkor újra és újra be kell zárnunk és újra meg kell nyitnunk a fájlt a naplók frissítéséhez. De a Follow Tail módban lévő ExpertTool esetén ez nem szükséges.
A következő képek a naplók elrendezését mutatják
A LogExpert eszközzel hibakereshető a szelén webdriver által létrehozott naplók, ahogy ebben az eszközben egyszer lehetséges
- kereshet bármilyen szöveget és reguláris kifejezést,
- könyvjelzőt hozhat létre és megjegyzéseket fűzhet hozzájuk, valamint navigálhat a könyvjelzők között, ami semmilyen más eszközben nem lehetséges,
- Szűrje a naplókat és keressen szöveges tartományokat, és egy másik szűrőt is alkalmazhat az előző szűrt naplókra,
- Jelöljön ki egy másik sort bizonyos szavak alapján.
Ez az eszköz segít az adatok különböző oszlopokra történő felosztásában is.