Mi a Log4j?
A Log4j egy 1996 elején kifejlesztett, Java-ban írt gyors, rugalmas és megbízható naplózási keretrendszer (APIS). Apache szoftverlicenc alatt terjesztik. A Log4J a C, C ++, C #, Perl, Python, Ruby és Eiffel nyelvekbe került. Ez egy olyan eszköz, amelyet kis és nagy léptékű Selenium Automation projektekhez használnak.
Miért használja a Log4j-t?
- Ez egy nyílt forráskód
- A Log4j segítségével lehetőség van a Selenium Automation folyamatairól fájlokban vagy adatbázisokban tárolni
- A Log4j-t nagy és kis projektekhez is használják
- A Log4j programban a SOPL utasítások helyett a napló utasításokat használjuk a kódban, hogy megismerjük a projekt állapotát a végrehajtás során.
A Log4j három fő összetevőből áll
- Naplózók : Felelős az adatok naplózásáért. A naplózók projektbe történő beépítéséhez a következő lépéseket kell végrehajtani:
- Készítsen példányt a naplózó osztályhoz : A Napló osztály egy Java-alapú segédprogram, amely a log4j használatához már minden általános metódust megvalósított
- Adja 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 - kinyomtatja a hibakeresési információkat, és hasznos a fejlesztési szakaszban
- INFO - információs üzenet nyomtatása, amely kiemeli az alkalmazás előrehaladását
- FIGYELMEZTETÉS - a rendszer hibás és váratlan viselkedésével kapcsolatos információk kinyomtatása.
- HIBA - nyomtatási hibaüzenet, amely lehetővé teheti a rendszer folytatását
- FATAL - a rendszer kritikus adatainak kinyomtatása, amelyek az alkalmazás összeomlását okozzák
- KI - Nincs naplózás
- Függelékek : A LogEvents rendeltetési helyükre történő eljuttatására szolgál. Eldönti, hogy mi fog történni a naplóinformációkkal. Egyszerű szavakkal, a naplók fájlba írására szolgál. Az alábbiakban néhány típusú Függelék található
- A ConsoleAppender naplózza a normál kimenetet
- A File Appender naplózást nyomtat valamilyen fájlba
- A fájl hozzáfűzése egy maximális méretű fájlra
Megjegyzés: A log4j tulajdonságokban tetszőleges névvel hívhatjuk az Appendert. Vannak más kiegészítők is, de erre a néhányra korlátozódunk.
- Elrendezések : Felelős a naplózási információk különböző stílusú formázásáért.
A Naplózó osztály különböző módszereket kínál a naplózási tevékenységek kezelésére. Két statikus módszert kínál a Naplózó objektum megszerzéséhez.
Nyilvános statikus naplózó getRootLogger ()Nyilvános statikus naplózó getLogger (karakterlánc neve)
Hogyan van konfigurálva a log4j?
A log4j konfigurálásához el kell döntenünk, hogy melyik mellékletet valósítsuk meg. Ennek megfelelően az appender paraméterei kerülnek beállításra.
- A DEBUG szintet és a RollingFileAppender-t fogjuk használni
- Két konfigurációt vagy naplót fogunk megtenni,
- Először: root logger, amely az összes rendszer által létrehozott naplót fájlnévbe írja, azaz a Selenium.logs
- Másodszor: A kézi parancsok által generált információkat kódba írja a Manual.logs fájlnévbe
- Az elrendezés PatternLayout lesz
#Root logger
log4j.rootLogger = HIBÁK, fájllog4j.appender.file = org.apache.log4j.RollingFileAppenderlog4j.appender.file.File = D: \\ Guru99 \\ src \\ Selenium.logslog4j.appender.file.maxFileSize = 900 KBlog4j.appender.file.maxBackupIndex = 5log4j.appender.file.layout = org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern =% d {ABSOLUTE}% 5p% c {1} :% L -% m% nlog4j.appender.file.Append = hamis
# Alkalmazásnaplók
log4j.logger.devpinoyLogger = HIBÁK, dest1log4j.appender.dest1 = org.apache.log4j.RollingFileAppenderlog4j.appender.dest1.maxFileSize = 900 KBlog4j.appender.dest1.maxBackupIndex = 6log4j.appender.dest1.layout = org.apache.log4j.PatternLayoutlog4j.appender.dest1.layout.ConversionPattern =% d {dd / MM / éééé ÓÓ: h: ss}% c% m% nlog4j.appender.dest1.File = D: \\ Guru99 \\ src \\ Manual.logslog4j.appender.dest1.Append = hamis
A fenti példában úgy konfiguráltuk a log4j-t, hogy két különböző fájlba jelentkezzen be Selenium.log és Manual.log néven.
- a file és a dest1 a két azonosító.
- A "File" a fájl nevének megadására szolgál, amelybe a naplók mentésre kerülnek
- A "maxFileSize" a naplófájl maximális méretének konfigurálá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 lesz hozzáadva.
- A "maxBackupIndex" a biztonsági mentésre szánt fájlok maximális számának beállításához használható.
- Az "elrendezés" a naplófájl formátumának beállítására szolgál.
- Az "Append" a függelék függvény beállítására szolgál. Ha hamisra van állítva, akkor minden alkalommal, amikor új fájl jön létre, nem a régi fájlt használják a naplózáshoz
Hogyan használják a log4j-t a szkripten belül?
A kódban a "log" -ot használtuk referenciaváltozóként, hivatkozva a Logger osztály getLogger metódusára
Naplózó napló = 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 ("- információ--");
Mi az a LogExpert eszköz?
- A LogExpert egy olyan eszköz a Windows számára, amelyet a naplók faragására fejlesztettek ki
- 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ővel és a naplók kiemelésével
- Ebben az eszköznaplóban a fájlok automatikusan frissülnek, amikor megnyitják őket
- Ebben az eszközben több naplófájlt is meg tudunk nyitni különböző füleken
- Megjegyzéseket is tehetünk a könyvjelzőkre, és van egy gyorsbillentyű a különböző könyvjelzők közötti navigáláshoz. Láthatjuk a teljes könyvjelző listát is, és onnan navigálhatunk
- Az eszköz parancsikonjai a súgófájlban találhatók, hogy az eszközhöz lehessen hivatkozni.
A Log4j és a szelén használatának lépései
1. lépés: Az Eclipse programban hozzon létre egy új projektet log4j_demo névvel
2. lépés: Kattintson jobb gombbal az src -> Build Path -> Configure Build Path elemre
2. lépés: Kattintson a Könyvtárak és a Log4J könyvtár hozzáadása elemre. Letöltheti a https://logging.apache.org/log4j/1.2/download.html webhelyről
3. lépés: 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" néven
- Kattintson a Befejezés gombra
Hozzon létre még két fájlt, és adjon nekik neveket, például Selenium.logs és Manual.logs. Ezek a fájlok tartalmazzák a rendszer által létrehozott összes naplót és manuálisan naplózott utasításokat
4. lépés: A log4j.properties fájlban másolja át a teljes konfigurációt.
5. lépés : Hozzon létre főosztályt:
- Kattintson a jobb gombbal az alapértelmezett csomagra -> Új -> Osztály
- Adja meg az osztály nevét, és kattintson a Befejezés gombra
6. lépés: Másolja 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;nyilvános osztály LoggingDemo {/ *** @param érvel* /public static void main (String [] érvel) {// TODO Automatikusan létrehozott módszercsonkWebDriver illesztőprogram = new FirefoxDriver ();Naplózó napló = Logger.getLogger ("devpinoyLogger");driver.get ("http://healthunify.com/bmicalculator/");log.debug ("nyitó webiste");driver.manage (). timeouts (). implicitlyWait (20, TimeUnit.SECONDS);log.debug ("vonzó súly");driver.findElement (By.name ("wg")). sendKeys ("87");log.debug ("kilogramm kiválasztása");driver.findElement (By.name ("opt1")). sendKeys ("kilogramm");log.debug ("magasság kiválasztása lábban");driver.findElement (By.name ("opt2")). sendKeys ("5");log.debug ("magasság kiválasztása hüvelykben");driver.findElement (By.name ("opt3")). sendKeys ("10");log.debug ("Kattintson a számításra");driver.findElement (By.name ("cc")). kattintson ();log.debug ("SIUnit érték beolvasása");Karaktersorozat SIUnit = driver.findElement (By.name ("si")). GetAttribute ("value");log.debug ("USUnit érték beolvasása");Karakterlánc USUnit = driver.findElement (By.name ("mi")). GetAttribute ("érték");log.debug ("UKUnit érték beolvasása");Karakterlánc UKUnit = driver.findElement (By.name ("uk")). GetAttribute ("value");log.debug ("Általános leírás megszerzése");Karakterlánc = 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 ("megjegyzés =" + megjegyzés);driver.quit ();}}
A fenti kódban meglátogatjuk a http://healthunify.com/bmicalculator/ webhelyet, és ellenőrizzük a BMI kalkulátort. A beírt súly 87 kg, magassága 5 láb 10 hüvelyk. A szkript ellenőrzi a kimenetet SE, USA és Egyesült Királyság egységeiben.
A Logger.getLogger ("devpinoyLogger") segítségével rendszer szintű naplókat hozunk létre
A log.debug módszerrel adatokat tárolunk a Manual.log könyvtárba
7. lépés: Futtassa a szkriptet. Nyissa meg a Kézi és Szelén naplók helyét 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 a http://logexpert.codeplex.com/ webhelyről. Lépjen a LogExpert letöltési mappájába
- Nyissa meg a LogExpert.exe fájlt
- Kattintson a Fájl -> Megnyitás és tallózás gombra arra az útvonalra, ahol a Manual.log és a Selenium.log fájlokat tárolja. Válassza ki a fájlt
- Válassza a "Farok követése" lehetőséget
A követés utáni opció kiválasztása lehetővé teszi a naplók testreszabását, ami azt jelenti, hogy a LogExpert automatikusan frissíti a naplófájlt, amikor a parancsfájl végrehajtási szakaszban van. Ha bármilyen más szerkesztőt használunk, mint például a jegyzettömböt, akkor a naplók frissítéséhez újra és újra be kell zárnunk és újra meg kell nyitnunk a fájlt. De ha az ExpertTool a Tail Follow módban van, ez nem szükséges.
Az alábbi képek a naplók elrendezését mutatják
A LogExpert eszköz használatával hibakereshető a szelén webmeghajtó által létrehozott naplók, mint ebben az eszközben
- bármilyen szöveg és reguláris kifejezés keresése,
- létrehozhat könyvjelzőt és megjegyzéseket fűzhet hozzájuk, valamint navigálhat a könyvjelzők között, ami más eszközön nem lehetséges,
- Szűrje a naplókat és keressen szövegtartományokat, és alkalmazhat egy másik szűrőt az előző szűrt naplókra is,
- Jelöljön ki egy bizonyos sort bizonyos szavak alapján.
Ez az eszköz segít az adatok különböző oszlopokban történő felosztásában is.