Prijavi se Selenium: Kako preuzeti i koristiti datoteku svojstava Log4j

Što je Log4j in Selenium?

Log4j je brz, fleksibilan i pouzdan okvir za bilježenje (APIS) napisan u njemu Java razvijen početkom 1996. Distribuira se pod apaš Licenca softvera. Log4J je prenesen na C, C++, C#, Perl, Python, Ruby i Eiffelov jezik. To je alat koji se koristi za male i velike razmjere Selenium Projekti automatizacije.

Zašto koristiti Log4j?

  • To je otvoreni izvor
  • Pomoću Log4j-a moguće je pohraniti detalje o toku našeg Selenium Automatizacija u datoteci ili bazama podataka
  • Log4j se koristi za velike kao i male projekte
  • U Log4j-u koristimo izjave dnevnika umjesto SOPL izjava u kodu kako bismo znali status projekta dok se izvršava

Komponente Log4j

Komponente Log4j

drvosječe

Odgovoran je za bilježenje podataka. Za implementaciju logera u projekt potrebno je izvršiti sljedeće korake

Stvorite instancu za klasu zapisivača

Logger klasa je a Javauslužni program koji ima sve generičke metode već implementirane za korištenje log4j

Definirajte Log4j razinu

Prvenstveno postoji pet vrsta razina zapisa

  1. Sve – Ova razina zapisivanja zabilježit će sve (uključuje sve zapisnike)
  2. DEBUG – ispis informacija o otklanjanju pogrešaka i pomaže u fazi razvoja
  3. INFO – ispis informativne poruke koja naglašava napredak aplikacije
  4. UPOZORENJE – ispis informacija o neispravnom i neočekivanom ponašanju sustava.
  5. POGREŠKA – ispis poruke o pogrešci koja bi mogla omogućiti sustavu nastavak
  6. FATAL – ispišite kritične informacije sustava koje uzrokuju pad aplikacije
  7. ISKLJUČENO – Nema zapisivanja

Dodaci

Koristi se za isporuku LogEvents na njihovo odredište. Odlučuje što će se dogoditi s podacima dnevnika. Jednostavnim riječima, koristi se za pisanje dnevnika u datoteku. Slijedi nekoliko vrsta dodataka

  1. ConsoleAppender se prijavljuje na standardni izlaz
  2. File appender ispisuje zapise u neku datoteku
  3. Rolling file appender u datoteku s maksimalnom veličinom

Bilješka: U svojstvima log4j appender možemo pozvati bilo kojim imenom. Postoje i drugi dodaci, ali ograničit ćemo se na njih nekoliko.

izgleda

Odgovoran je za formatiranje podataka zapisivanja u različitim stilovima.

Klasa Logger pruža različite metode za rukovanje aktivnostima zapisivanja. Pruža dvije statičke metode za dobivanje Logger Object.

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

Kako je log4j konfiguriran?

Da bismo konfigurirali log4j, moramo odlučiti koji dodatak implementirati. Sukladno tome, bit će postavljeni parametri appendera.

  • Koristit ćemo razinu DEBUG i RollingFileAppender
  • Napravit ćemo dvije konfiguracije ili dnevnike,
  • Prvo: root logger, koji će zapisati sve zapise koje sustav generira u ime datoteke, tj Selenium.cjepanice
  • Drugo: Zapisat će informacije generirane ručnim naredbama u kodu u naziv datoteke - Manual.logs
  • Izgled će biti PatternLayout
  • #Root logger

    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
    

    #Dnevnici aplikacije

    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
    

    U gornjem primjeru, konfigurirali smo log4j za prijavu u dvije različite datoteke pod nazivom as Selenium.log i Manual.log.

    • file i dest1 dva su identifikatora.
    • “Datoteka” se koristi za davanje naziva datoteke u kojoj će se zapisi spremati
    • “maxFileSize” se koristi za konfiguriranje maksimalne veličine datoteke dnevnika. Kada datoteka dosegne tu veličinu, stvorit će se nova datoteka s istim nazivom, a stari naziv datoteke bit će joj dodan kao indeks.
    • “maxBackupIndex” koristi se za konfiguriranje maksimalnog broja datoteka za sigurnosno kopiranje.
    • “layout” se koristi za postavljanje formata datoteke dnevnika.
    • “Dodaj” se koristi za postavljanje funkcije dodavanja. Ako je postavljeno na false, svaki put kada se kreira nova datoteka umjesto da se stara datoteka koristi za zapisivanje

    Kako se log4j koristi unutar skripte?

    U kodu smo upotrijebili "log" kao referentnu varijablu koja referencira getLogger metodu Logger klase

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

    Upotrijebite referencirajuću varijablu "log" i metodu otklanjanja pogrešaka za zapis informacija koje želimo.

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

    Što je alat LogExpert?

    1. Alat LogExpert je alat za Windows razvijen za rep trupaca
    2. To je besplatan preglednik dnevnika otvorenog koda.
    3. To je alat za analizu zapisa s više značajki kao što su pretraživanje, filtriranje, označavanje i isticanje zapisa
    4. U zapisnicima ovog alata datoteke se automatski ažuriraju kada se otvore
    5. U ovom alatu možemo otvoriti više datoteka dnevnika u različitim karticama
    6. Također možemo staviti komentare na oznake, a tu je i tipka prečaca za kretanje između različitih oznaka. Također možemo vidjeti kompletan popis oznaka i kretati se odatle
    7. Prečaci alata dani su u datoteci pomoći kako bi se mogli uputiti na alat.

    Kako koristiti Log4j in Selenium

    Korak 1) In Eclipse kreirajte novi projekt s imenom log4j_demo

    Koristite Log4j In Selenium

    Korak 2) Desni klik na src -> Build Path -> Configure Build Path

    Koristite Log4j In Selenium

    Korak 3) Kliknite na Libraries i Add Log4J Library. Možete ga preuzeti sa https://logging.apache.org/log4j/1.2/download.html

    Koristite Log4j In Selenium

    Korak 4) Napravite novu datoteku. Ova datoteka će uključivati ​​svu log4j konfiguraciju

    1. Desni klik na src -> New -> Other -> General -> File
    2. Dajte naziv datoteke kao "log4j.properties"
    3. Kliknite Finish

    Stvorite još dvije datoteke i dajte im imena kao što su Selenium.dnevnici i Ručni.dnevnici. Ove će datoteke sadržavati sve zapise koje je stvorio sustav i ručno zapisane izjave

    Koristite Log4j In Selenium

    Korak 5) U log4j.properties kopirajte cijelu konfiguraciju.

    Koristite Log4j In Selenium

    Korak 6) Stvorite glavnu klasu:

    1. Desni klik na zadani paket -> Novo -> Klasa
    2. Unesite naziv klase i kliknite završi

    Koristite Log4j In Selenium

    Korak 7) Kopirajte sljedeći kod u glavnu klasu

    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();
    	}
    }
    

    U gornjem kodu posjećujemo https://healthunify.com/bmicalculator/i provjerite BMI kalkulator. Unesena težina je 87 kg, a visina 5 stopa 10 inča. Skripta provjerava izlaz u SE, US i UK jedinicama.

    Pomoću Logger.getLogger(“devpinoyLogger”) stvaramo zapisnike na razini sustava

    Pomoću metode log.debug pohranjujemo podatke u Manual.log

    Korak 8) Pokrenite skriptu. Otvorite lokaciju Manual i Selenium zapise za provjeru podataka zapisivanja.

    Kako se alat LogExpert može koristiti za analizu zapisa

    1. Preuzmite alat s https://github.com/zarunbal/LogExpert . Idite u mapu za preuzimanje programa LogExpert

      Alat LogExpert može se koristiti za analizu zapisa

    2. Otvorite LogExpert.exe
    3. Kliknite Datoteka -> Otvori i pretražite stazu gdje se nalazi Manual.log i Selenium.log datoteke su pohranjene. Odaberite datoteku
    4. Odaberite opciju "Prati rep".

      Alat LogExpert može se koristiti za analizu zapisnika

      Odabir opcije follow tail omogućuje praćenje zapisa što znači da LogExpert automatski ažurira datoteku dnevnika kada je skripta u fazi izvršavanja. Ako koristimo bilo koji drugi uređivač kao što je notepad, tada moramo zatvoriti i ponovno otvoriti datoteku opet i opet da ažuriramo zapise. Ali uz ExpertTool u načinu rada Follow Tail to nije potrebno.

      Sljedeće slike prikazuju raspored trupaca

      Alat LogExpert može se koristiti za analizu zapisnika

      Alat LogExpert može se koristiti za analizu zapisnika

    Pomoću alata LogExpert možete otkloniti pogreške u zapisima koje je stvorio selenium webdriver kao što to u ovom alatu može

    • traženje bilo kojeg teksta i regularnog izraza,
    • stvoriti knjižnu oznaku i komentirati ih te se također može kretati između knjižnih oznaka što nije moguće ni u jednom drugom alatu,
    • Filtrirajte zapisnike i tražite raspone teksta, a također možete primijeniti drugi filtar na prethodne filtrirane zapisnike,
    • Označite različite retke na temelju određenih riječi.

    Ovaj alat također pomaže podijeliti podatke u različite stupce.