Kuidas Log4j-d kasutada Selenium?

โšก Nutikas kokkuvรตte

Logi4j sisse Selenium on kiire, paindlik Java logimisraamistik, mis salvestab automatiseerimisskriptide voo รผksikasju. See toetab mitut logitaset, lisandeid ja paigutusi ning sobib hรคsti kokku LogExpertiga genereeritud logifailide analรผรผsimiseks.

  • ๐Ÿ”˜ Komponendid: Log4j on รผles ehitatud logijate, lisajate ja paigutuste รผmber, mis koos jรครคdvustavad, marsruutivad ja vormindavad logisรผndmusi Selenium automatiseerimisprojektid.
  • โ˜‘๏ธ Logitasemed: Seitse taset (Kร•IK, SILUMISE, INFO, HOIATUS, VIGA, SAATUSLIK, Vร„LJAS) kontrollivad, kui palju รผksikasju skripti tรคitmise ja silumise ajal salvestatakse.
  • โœ… Lisandid: ConsoleAppender, FileAppender ja RollingFileAppender otsustavad, kas logikirjed lรคhevad konsooli, staatilisse faili vรตi jooksvalt failide komplekti.
  • ๐Ÿงช Konfiguratsioon: Fail log4j.properties mรครคratleb juur- ja rakenduselogijad, failiteed, maksimaalse failisuuruse, varukoopia indeksi ja PatternLayout vormindusreeglid.
  • ๐Ÿ› ๏ธ LogExperti vaatur: Tasuta LogExperti tรถรถriista sabad Selenium ja kรคsitsi logifailid reaalajas koos filtreerimise, jรคrjehoidjate, esiletรตstmise ja mitme vahekaardi vaatamisega.

Kuidas Log4j-d kasutada Selenium

Mis on Log4j sees Selenium?

Log4j on kiire, paindlik ja usaldusvรครคrne logimisraamistik (API), mis on kirjutatud ... keeles. Java ja tรถรถtati vรคlja 1996. aasta alguses. Seda levitatakse all Apache Tarkvaralitsents. Log4j on portitud C-keelele. C++, C#, Perl, Python, Ruby ja Eiffeli keeled. See on tรถรถriist, mida kasutatakse nii vรคikese kui ka suure ulatusega projektide jaoks. Selenium automatiseerimisprojektid.

Miks kasutada Log4j?

Log4j pakub mitmeid praktilisi eeliseid Selenium projektid:

  • See on avatud lรคhtekoodiga.
  • Log4j abil on vรตimalik salvestada voo รผksikasju Selenium automatiseerimine failis vรตi andmebaasis.
  • Log4j sobib nii suurtele kui ka vรคikestele projektidele.
  • Log4j-s asendavad logilaused koodis System.out.println lauseid, et teada saada projekti olekut selle tรคitmise ajal.

Log4j komponendid

Log4j komponendid

Raieraidurid

Logija vastutab teabe logimise eest. Logijate projektis rakendamiseks tuleb teha jรคrgmised sammud.

Loo Logger klassi eksemplar

Loggeri klass on Java-pรตhine utiliit, millel on kรตik Log4j kasutamiseks vajalikud รผldised meetodid juba rakendatud.

Mรครคrake Log4j tase

Peamiselt on seitset tรผรผpi logitasemeid:

  1. Kร•IK โ€“ See logimise tase salvestab kรตik (see lรผlitab sisse kรตik logid).
  2. DEBUG โ€“ prindib silumisteabe ja on abiks arendusetapis.
  3. INFO โ€“ prindib teavitusi, mis toovad esile rakenduse edenemise.
  4. WARN โ€“ prindib teavet sรผsteemi vigase ja ootamatu kรคitumise kohta.
  5. ERROR โ€“ prindib veateateid, mis vรตivad lubada sรผsteemil jรคtkata.
  6. FATAL โ€“ prindib sรผsteemikriitilise teabe, mis pรตhjustab rakenduse krahhi.
  7. Vร„LJAS โ€“ Logimist ei toimu.

Lisandid

Lisafunktsiooni kasutatakse logisรผndmuste (LogEvents) sihtkohta toimetamiseks. See otsustab, mida logiteabega teha. Lihtsamalt รถeldes kirjutab see logid faili. Jรคrgnevalt on toodud mรตned lisafunktsioonide tรผรผbid:

  1. ConsoleAppender logib standardvรคljundisse.
  2. FileAppender prindib logid kindlasse faili.
  3. RollingFileAppender kirjutab maksimaalse suurusega faili.

Mรคrge: Failis log4j.properties saab lisandit kutsuda mis tahes nimega. On ka teisi lisandit, kuid siin keskendutakse just neile vรคhestele.

paigutusega

Paigutus vastutab logiteabe vormindamise eest erinevates stiilides.

Logger klass pakub logimistegevuste haldamiseks erinevaid meetodeid. See pakub kahte staatilist meetodit Logger objekti hankimiseks.

public static Logger getRootLogger()
public static Logger getLogger(String name)

Kuidas on Log4j konfigureeritud?

Log4j konfigureerimiseks otsustage, millist lisandit rakendada. Lisandi parameetrid mรครคratakse vastavalt.

  • Kasutage DEBUG-taset ja RollingFileAppenderit.
  • Luuakse kaks konfiguratsiooni ehk logi:
    • Esiteks: juurlogija, mis kirjutab kรตik sรผsteemi loodud logid faili nimega Selenium.logid.
    • Teiseks: rakenduste logija, mis kirjutab kรคsitsi antud kรคskude abil koodis genereeritud teabe faili nimega Manual.logs.
  • Kasutatav paigutus on PatternLayout.

#Juurte logija

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{1}:%L - %m%n
log4j.appender.file.Append=false

#Rakenduste logid

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

รœlaltoodud nรคites on Log4j konfigureeritud logima kahte erinevasse faili nimega Selenium.log ja Manual.log.

  • fail ja dest1 on kaks identifikaatorit.
  • โ€žFailโ€ annab logide salvestamiseks faili nime.
  • โ€žMaxFileSizeโ€ abil saab konfigureerida logifaili maksimaalset suurust. Kui fail saavutab selle suuruse, luuakse sama nimega uus fail ja vana failinimi saab indeksijรคrelliide.
  • โ€žMaxBackupIndexโ€ abil saab seadistada varundamiseks maksimaalse arvu faile.
  • โ€žPaigutustโ€ kasutatakse logifaili vormingu mรครคramiseks.
  • Funktsiooni โ€žAppendโ€œ kasutatakse lisamisfunktsiooni mรครคramiseks. Kui see on seatud vรครคrtusele โ€žfalseโ€œ, luuakse iga kord uus fail, selle asemel et logimiseks vana faili uuesti kasutada.

Kuidas Log4j skriptis kasutatakse?

Koodis kasutatakse muutujana โ€žlogโ€, mis viitab klassi Logger meetodile getLogger.

Logger log = Logger.getLogger("devpinoyLogger");

Vajaliku teabe logimiseks kasutage viitemuutujat โ€žlogโ€ ja silumismeetodit.

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

Mis on LogExpert tรถรถriist?

LogExpert on tรถรถriist, millel on jรคrgmised omadused:

  1. LogExpert on Windows palkide sabade lรตikamiseks vรคlja tรถรถtatud tรถรถriist.
  2. See on tasuta ja avatud lรคhtekoodiga logide vaataja.
  3. See on logide analรผรผsimise tรถรถriist, millel on mitu funktsiooni, nรคiteks otsimine, filtreerimine, jรคrjehoidjate lisamine ja logide esiletรตstmine.
  4. Logifailid vรคrskendatakse selle tรถรถriista avamisel automaatselt.
  5. Erinevatel vahekaartidel saab avada mitu logifaili.
  6. Jรคrjehoidjatele saab lisada kommentaare ja erinevate jรคrjehoidjate vahel saab liikuda kiirklahvi abil. Navigeerimiseks on saadaval tรคielik jรคrjehoidjate loend.
  7. Tรถรถriista otseteed on toodud abifailis, et neile saaks vajadusel viidata.

Kuidas kasutada Log4j-d sisse Selenium

Step 1) In Eclipse, loo uus projekt nimega log4j_demo.

Kasutage Log4j In Selenium

Step 2) Paremklรตpsake src-l -> Ehitustee -> Ehitustee seadistamine.

Kasutage Log4j In Selenium

Step 3) Klรตpsake valikul โ€žTeekidโ€ ja lisage Log4j teek. Selle saab alla laadida aadressilt https://logging.apache.org/log4j/1.2/download.html.

Kasutage Log4j In Selenium

Step 4) Loo uus fail. See fail sisaldab kogu Log4j konfiguratsiooni.

  1. Paremklรตpsake src-l -> Uus -> Muu -> รœldine -> Fail.
  2. Andke failinimeks โ€žlog4j.propertiesโ€.
  3. Klรตpsake nuppu Lรตpeta.

Loo veel kaks faili ja nimeta need Selenium.logs ja Manual.logs. Need failid sisaldavad kรตiki sรผsteemi loodud logisid ja kรคsitsi logitud avaldusi.

Kasutage Log4j In Selenium

Step 5) Kopeeri kogu konfiguratsioon failist log4j.properties.

Kasutage Log4j In Selenium

Step 6) Loo pรตhiklass:

  1. Paremklรตpsake vaikepaketil -> Uus -> Klass.
  2. Pange klassile nimi ja klรตpsake nuppu Valmis.

Kasutage Log4j In Selenium

Step 7) Kopeeri jรคrgnev 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 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 website");
         driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
         log.debug("entering 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 inches");
         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();
    }
}

รœlaltoodud koodis kรผlastab skript https://healthunify.com/bmicalculator/ ja kontrollib KMI kalkulaatorit. Sisestatud kaal on 87 kg ja pikkus 5 jalga 10 tolli. Skript kontrollib vรคljundit SI, USA ja รœhendkuningriigi รผhikutes.

Skript loob sรผsteemi tasemel logid, kasutades funktsiooni Logger.getLogger(โ€ždevpinoyLoggerโ€). Andmed salvestatakse faili Manual.log meetodi abil.

Step 8) Kรคivitage skript. Avage Manual ja Selenium logid logimisandmete kontrollimiseks.

Kuidas saab LogExperti tรถรถriista kasutada logide analรผรผsimiseks

  1. Laadige tรถรถriist alla aadressilt https://github.com/zarunbal/LogExpert. Minge LogExperti allalaadimiste kausta.

    LogExperti tรถรถriista saab kasutada logide analรผรผsimiseks

  2. Avage LogExpert.exe fail.
  3. Klรตpsake menรผรผd Fail -> Ava ja sirvige teekonda, kuhu Manual.log ja Selenium.log-failid on salvestatud. Valige fail.
  4. Valige suvand โ€žJรคlgi sabaโ€.

    LogExpert Tooli saab kasutada logi analรผรผsimiseks

    Suvandi โ€žJรคlgi sabaโ€ valimine lubab logide saba jรคlgimise, mis tรคhendab, et LogExpert vรคrskendab logifaili skripti tรคitmise ajal automaatselt. Mis tahes muu redaktori, nรคiteks Notepadi puhul tuleb fail logide vรคrskendamiseks korduvalt sulgeda ja uuesti avada. LogExperti puhul reลพiimis โ€žJรคlgi sabaโ€ pole see vajalik.

    Jรคrgmistel piltidel on nรคha logide paigutus.

    LogExpert Tooli saab kasutada logi analรผรผsimiseks

    LogExpert Tooli saab kasutada logi analรผรผsimiseks

LogExperti abil luuakse logid, mille on loonud Selenium WebDriverit saab siluda. Selle tรถรถriistaga saab:

  • Otsi mis tahes teksti ja regulaaravaldisi.
  • Loo jรคrjehoidjaid ja kommenteeri neid ning navigeeri jรคrjehoidjate vahel, mis pole รผheski teises tรถรถriistas vรตimalik.
  • Filtreeri logisid, otsi tekstivahemikke ja rakenda eelnevalt filtreeritud logidele veel รผks filter.
  • Tรตsta esile erinevad read teatud sรตnade pรตhjal.

See tรถรถriist aitab ka andmeid jagada erinevatesse veergudesse.

KKK

Log4j 1.x jรตudis 2015. aastal lรตppu ja kasutab konfigureerimiseks atribuute vรตi XML-faili. Log4j 2.x pakub pรคrast Log4Shelli parandusi paremat jรตudlust, asรผnkroonseid logereid, lambda tuge ja tรคiustatud turvalisust, mistรตttu on see uute projektide jaoks soovitatav valik.

Log4j toetab konfigureeritavaid logitasemeid, pรผsivat failivรคljundit, jooksvat varundamist ja struktureeritud mustreid. System.out.println kirjutab ainult konsoolile ja seda ei saa filtreerida ega arhiveerida. Log4j teeb Selenium testi tulemusi on lihtsam triaaลพida, auditeerida ja reprodutseerida.

Jah. Tehisintellekti assistendid saavad analรผรผsida suuri Log4j vรคljundeid, klasterdada korduvaid tรตrkeid ja tuvastada algpรตhjuste mustreid. Selenium jookseb. Need toovad esile ebaรผhtlased asukoha mรครคrajad, aeglased sammud ja virnastatud traces, muutes tรถรถtlemata logiread kvaliteedikontrolli inseneride jaoks prioriteetseteks toiminguteks.

Tehisintellektil pรตhinevad jรคlgimisplatvormid neelavad Log4j vooge, tuvastavad anomaaliaid reaalajas ja ennustavad tรตrkeid enne, kui need kasutajaid mรตjutavad. Masinรตppemudelid hindavad raskusastet, eemaldavad mรผrarikkad sรผndmused ja kรคivitavad nutikaid hoiatusi, asendades kรคsitsi sisestatud grep-tรถรถvood ennetava jรคlgimisega.

Ei. LogExpert on populaarne tasuta Windows vaataja sabajรคlgimise ja filtreerimisega, kuid alternatiivide hulka kuuluvad BareTail, glogg, Klogg ja tรคisplatvormid nagu Splunk, Graylogvรตi ELK-virna tsentraliseeritud analรผรผsiks paljudes masinates.

Vรตta see postitus kokku jรคrgmiselt: