Log4j koos seleeniõpetusega: laadige alla, installige, kasutage & Näide

Lang L: none (table-of-contents):

Anonim

Mis on Log4j?

Log4j on Java-s kirjutatud kiire, paindlik ja usaldusväärne logimisraamistik (APIS), mis töötati välja 1996. aasta alguses. Seda levitatakse Apache tarkvaralitsentsi all. Log4J on viidud keeltesse C, C ++, C #, Perli, Pythoni, rubiini ja Eiffeli keeltesse. See on tööriist, mida kasutatakse väikeste ja suuremahuliste Selenium Automation projektide jaoks.

Miks kasutada Log4j?

  • See on avatud lähtekoodiga
  • Log4j abil on võimalik meie Selenium Automationi voo üksikasjad salvestada faili või andmebaasidesse
  • Log4j-d kasutatakse nii suurte kui ka väikeste projektide jaoks
  • Log4j-s kasutame projekti oleku teadmiseks koodi täitmisel logilauseid, mitte SOPL-lauseid.

Log4j-l on kolm põhikomponenti

  1. Logitajad : see vastutab teabe logimise eest. Logijate projektis juurutamiseks tuleb teha järgmised sammud -
  • Loggerklassi eksemplari loomine : Loggerklass on Java-põhine utiliit, millel on log4j kasutamiseks kõik üldised meetodid juba rakendatud
  • Määratlege Log4j tase : peamiselt on viis logitase
    1. Kõik - see logimise tase logib kõik sisse (see lülitab kõik logid sisse)
    2. VEADUSTAMINE - printige silumisteave ja on abiks arendusetapil
    3. INFO - printige infosõnum, mis tõstab esile rakenduse edenemist
    4. WARN - printige teave vigase ja ootamatu süsteemi käitumise kohta.
    5. VIGA - printimise veateade, mis võib lubada süsteemil jätkata
    6. FATAL - printige süsteemi kriitiline teave, mis põhjustab rakenduse krahhi
    7. VÄLJAS - logimist ei toimu
  1. Lisajad : seda kasutatakse LogEventsi sihtkohta toimetamiseks. See otsustab, mis juhtub logiteabega. Lihtsamalt öeldes kasutatakse seda logide faili kirjutamiseks. Järgnevalt on toodud mõned liidete tüübid
    1. ConsoleAppender logib standardväljundisse
    2. File appender prindib logid mõnda faili
    3. Faili lisamine maksimaalse suurusega faili

    Märkus. Log4j atribuutides võime helistada mis tahes nimega appenderile. On ka teisi lisandeid, kuid piirdume nende vähestega.

  2. Paigutused : see vastutab logimisteabe vormindamise eest erinevates stiilides.

Loggeri klass pakub logimistoimingute käsitlemiseks erinevaid meetodeid. See pakub loggerobjekti saamiseks kahte staatilist meetodit.

Avalik staatiline logija getRootLogger ()Avalik staatiline logija getLogger (stringi nimi)

Kuidas log4j konfigureeritakse?

Log4j seadistamiseks peame otsustama, millist rakendust rakendame. Vastavalt sellele määratakse apenderi parameetrid.

  • Kasutame DEBUG-taset ja RollingFileAppenderit
  • Teeme kaks konfiguratsiooni või logi,
    • Esiteks: juur logija, mis kirjutab kõik süsteemi loodud logid failinimesse, st Selenium.logs
    • Teiseks: kirjutab manuaalsete käskudega loodud teabe koodina failinimesse Manual.logs
  • Küljendus on PatternLayout

#Root logger

log4j.rootLogger = VIGA, faillog4j.appender.file = org.apache.log4j.RollingFileAppenderlog4j.appender.file.File = D: \\ Guru99 \\ src \\ Selenium.logslog4j.appender.file.maxFileSize = 900KBlog4j.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 = vale

# Rakenduste logid

log4j.logger.devpinoyLogger = VIGA, dest1log4j.appender.dest1 = org.apache.log4j.RollingFileAppenderlog4j.appender.dest1.maxFileSize = 900KBlog4j.appender.dest1.maxBackupIndex = 6log4j.appender.dest1.layout = org.apache.log4j.PatternLayoutlog4j.appender.dest1.layout.ConversionPattern =% d {pp / kk / aaaa HH: mm: ss}% c% m% nlog4j.appender.dest1.File = D: \\ Guru99 \\ src \\ Manual.logslog4j.appender.dest1.Append = vale

Ülalolevas näites oleme konfigureerinud log4j sisse logima kahte erinevat faili nimega Selenium.log ja Manual.log.

  • fail ja dest1 on kaks identifikaatorit.
  • "Faili" kasutatakse failinime andmiseks, millesse logid salvestatakse
  • "maxFileSize" kasutatakse logifaili maksimaalse suuruse konfigureerimiseks. Kui fail saavutab selle suuruse, luuakse sama nimega uus fail ja vana failinimi lisatakse sellele indeksina.
  • "maxBackupIndex" kasutatakse varundatavate failide maksimaalse arvu konfigureerimiseks.
  • "küljendust" kasutatakse logifaili vormingu määramiseks.
  • Funktsiooni "Lisa" kasutatakse lisamise funktsiooni määramiseks. Kui see on seatud väärtusele Väär, siis iga kord luuakse uus fail, mitte logimiseks ei kasutata vana faili

Kuidas log4j skriptis kasutatakse?

Koodis oleme loggerklassi getLogger meetodile viitava viitemuutujana kasutanud logi

Logi logi = Logger.getLogger ("devpinoyLogger");

Soovitud teabe logimiseks kasutage muutuja ja silumisviisi "log".

log.debug ("- teave--");

Mis on LogExperti tööriist?

  1. LogExperti tööriist on Windowsi tööriist, mis on välja töötatud palkide saba saamiseks
  2. See on tasuta ja avatud lähtekoodiga logivaataja.
  3. See on logianalüüsi tööriist, millel on mitu funktsiooni, näiteks logide otsimine, filtreerimine, järjehoidjate lisamine ja esiletõstmine
  4. Selles tööriistalogis värskendatakse faile avamisel automaatselt
  5. Selles tööriistas saame avada mitu logifaili erinevatel vahelehtedel
  6. Samuti võime kommentaare lisada järjehoidjatele ja erinevate järjehoidjate vahel liikumiseks on olemas kiirklahv. Näeme ka täielikku järjehoidjate loendit ja sealt navigeerida
  7. Tööriista otseteed on toodud abifailis, et neid saaks tööriista juurde suunata.

Log4j koos seleeniga kasutamiseks toimingud

Samm 1) Looge Eclipses uus projekt nimega log4j_demo

Samm 2) Paremklõpsake src -> Ehitamise tee -> Ehituse tee seadistamine

Samm 2) Klõpsake käsul Raamatukogud ja lisage Log4J teek. Selle saate alla laadida aadressilt https://logging.apache.org/log4j/1.2/download.html

Samm 3) Looge uus fail. See fail sisaldab kõiki log4j konfiguratsioone

  1. Paremklõpsake valikul src -> Uus -> Muu -> Üldine -> Fail
  2. Pange faili nimeks "log4j.properties"
  3. Klõpsake nuppu Lõpeta

Looge veel kaks faili ja andke neile nimed, näiteks Selenium.logs ja Manual.logs. Need failid sisaldavad kõiki süsteemi loodud logisid ja käsitsi logitud avaldusi

Samm 4) Kopeerige log4j.properties'is kogu konfiguratsioon.

Samm 5) Loo põhiklass:

  1. Paremklõpsake vaikepaketil -> Uus -> Klass
  2. Pange klassi nimi ja klõpsake nuppu Finish

Samm 6) Kopeerige järgmine kood põhiklassi

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 väidab* /public staatiline void main (String [] args) {// TODO Automaatselt loodud meetodi tüviWebDriveri draiver = uus FirefoxDriver ();Logi logi = Logger.getLogger ("devpinoyLogger");driver.get ("http://healthunify.com/bmicalculator/");log.debug ("veebi avamine");driver.manage (). timeout (). implicitlyWait (20, TimeUnit.SECONDS);log.debug ("kaasav kaal");draiver.findElement (By.name ("wg")). sendKeys ("87");log.debug ("kilogrammide valimine");draiver.findElement (By.nimi ("opt1")). sendKeys ("kilogramm");log.debug ("kõrguse valimine jalgades");draiver.findElement (By.name ("opt2")). sendKeys ("5");log.debug ("kõrguse valimine tollides");draiver.findElement (By.name ("opt3")). sendKeys ("10");log.debug ("Klõpsa arvutamiseks");driver.findElement (By.name ("cc")). klõpsake ();log.debug ("SIUniti väärtuse saamine");String SIUnit = driver.findElement (By.name ("si")). GetAttribute ("value");log.debug ("Väärtuse USUnit saamine");String USUnit = driver.findElement (By.name ("meie")). GetAttribute ("value");log.debug ("UKUniti väärtuse saamine");String UKUnit = driver.findElement (By.name ("uk")). GetAttribute ("väärtus");log.debug ("Üldise kirjelduse saamine");Stringmärkus = 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 ("märkus =" + märkus);juht.ulge ();}}

Ülaltoodud koodis külastame veebisaiti http://healthunify.com/bmicalculator/ja kontrollime BMI kalkulaatorit. Sisestatud kaal on 87 kg ja kõrgus 5 jalga 10 tolli. Skript kontrollib väljundit SE, USA ja Suurbritannia ühikutes.

Logger.getLogger ("devpinoyLogger") abil loome süsteemitaseme logid

Kasutades meetodit log.debug, salvestame andmed käsiraamatusse Manual.log

7. samm. Käivitage skript. Logimisandmete kontrollimiseks avage käsitsi- ja seleenilogide asukoht.

Kuidas saab LogExperti tööriista logide analüüsimiseks kasutada

  1. Laadige tööriist alla aadressilt http://logexpert.codeplex.com/. Minge LogExperti allalaadimiskausta
  2. Avage LogExpert.exe
  3. Klõpsake nuppu Fail -> Ava ja sirvige teele, kuhu on salvestatud Manual.log ja Selenium.log failid. Valige fail
  4. Valige suvand "Jälgi saba"

    Jälgimise saba suvandi valimine võimaldab logide sättimist, mis tähendab, et LogExpert värskendab logifaili automaatselt, kui skript on täitmisfaasis. Kui kasutame mõnda muud redaktorit, näiteks märkmikku, peame logide värskendamiseks faili uuesti ja uuesti sulgema. Kuid kui ExpertTool on režiimis Follow Tail, pole see vajalik.

    Järgmised pildid näitavad logide paigutust

LogExperti tööriista abil saab seleeni veebidraiveri loodud logisid siluda, nagu selles tööriistas saab

  • otsige mis tahes teksti ja regulaaravaldist,
  • luua järjehoidjaid ja neid kommenteerida ning samuti saab liikuda järjehoidjate vahel, mis pole ühegi muu tööriista puhul võimalik,
  • Filtreerige logid ja otsige tekstivahemikke ning saate ka eelmise filtreeritud logi jaoks kasutada muud filtrit,
  • Tõstke esile teatud rida mõne kindla sõna põhjal.

See tööriist aitab andmeid jaotada ka erinevatesse veergudesse.