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
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
- Sve – Ova razina zapisivanja zabilježit će sve (uključuje sve zapisnike)
- DEBUG – ispis informacija o otklanjanju pogrešaka i pomaže u fazi razvoja
- INFO – ispis informativne poruke koja naglašava napredak aplikacije
- UPOZORENJE – ispis informacija o neispravnom i neočekivanom ponašanju sustava.
- POGREŠKA – ispis poruke o pogrešci koja bi mogla omogućiti sustavu nastavak
- FATAL – ispišite kritične informacije sustava koje uzrokuju pad aplikacije
- 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
- ConsoleAppender se prijavljuje na standardni izlaz
- File appender ispisuje zapise u neku datoteku
- 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
#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?
- Alat LogExpert je alat za Windows razvijen za rep trupaca
- To je besplatan preglednik dnevnika otvorenog koda.
- To je alat za analizu zapisa s više značajki kao što su pretraživanje, filtriranje, označavanje i isticanje zapisa
- U zapisnicima ovog alata datoteke se automatski ažuriraju kada se otvore
- U ovom alatu možemo otvoriti više datoteka dnevnika u različitim karticama
- 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
- 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
Korak 2) Desni klik na src -> Build Path -> Configure Build Path
Korak 3) Kliknite na Libraries i Add Log4J Library. Možete ga preuzeti sa https://logging.apache.org/log4j/1.2/download.html
Korak 4) Napravite novu datoteku. Ova datoteka će uključivati svu log4j konfiguraciju
- Desni klik na src -> New -> Other -> General -> File
- Dajte naziv datoteke kao "log4j.properties"
- 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
Korak 5) U log4j.properties kopirajte cijelu konfiguraciju.
Korak 6) Stvorite glavnu klasu:
- Desni klik na zadani paket -> Novo -> Klasa
- Unesite naziv klase i kliknite završi
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
- Preuzmite alat s https://github.com/zarunbal/LogExpert . Idite u mapu za preuzimanje programa LogExpert
- Otvorite LogExpert.exe
- Kliknite Datoteka -> Otvori i pretražite stazu gdje se nalazi Manual.log i Selenium.log datoteke su pohranjene. Odaberite datoteku
- Odaberite opciju "Prati rep".
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
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.