Masuk4j Selenium: Cara Mengunduh & menggunakan File Properti Log4j

Apa itu Log4j Selenium?

Log4j adalah kerangka logging (APIS) yang cepat, fleksibel, dan andal Java dikembangkan pada awal tahun 1996. Ini didistribusikan di bawah Apache Lisensi Perangkat Lunak. Log4J telah di-porting ke C, C++, C#, Perl, Python, Bahasa Ruby dan Eiffel. Merupakan alat yang digunakan untuk skala kecil hingga besar Selenium Proyek otomasi.

Mengapa menggunakan Log4j?

  • Ini adalah open source
  • Dengan Log4j, dimungkinkan untuk menyimpan detail aliran kita Selenium Otomatisasi dalam file atau database
  • Log4j digunakan untuk proyek besar maupun kecil
  • Di Log4j, kami menggunakan pernyataan log daripada pernyataan SOPL dalam kode untuk mengetahui status proyek saat sedang dijalankan

Komponen Log4j

Komponen Log4j

Penebang

Bertanggung jawab untuk mencatat informasi. Untuk menerapkan logger ke dalam proyek, langkah-langkah berikut perlu dilakukan

Buat sebuah instance untuk kelas logger

Kelas logger adalah a Javautilitas berbasis yang telah menerapkan semua metode umum untuk menggunakan log4j

Tentukan tingkat Log4j

Pada dasarnya ada lima jenis level log

  1. Semua – Tingkat logging ini akan mencatat semuanya (mengaktifkan semua log)
  2. DEBUG – mencetak informasi debugging dan membantu dalam tahap pengembangan
  3. INFO – mencetak pesan informasi yang menyoroti kemajuan aplikasi
  4. PERINGATAN – mencetak informasi mengenai perilaku sistem yang salah dan tidak terduga.
  5. ERROR – mencetak pesan kesalahan yang memungkinkan sistem untuk melanjutkan
  6. FATAL – mencetak informasi penting sistem yang menyebabkan aplikasi mogok
  7. MATI – Tidak ada pencatatan

Penambah

Digunakan untuk mengirimkan LogEvents ke tujuannya. Memutuskan apa yang akan terjadi dengan informasi log. Dengan kata sederhana, digunakan untuk menulis log dalam file. Berikut ini adalah beberapa jenis Appender

  1. ConsoleAppender mencatat output standar
  2. Penambah file mencetak log ke beberapa file
  3. Bergulir file appender ke file dengan ukuran maksimum

Catatan: Di properti log4j kita dapat memanggil appender dengan nama apa pun. Ada juga appender lainnya, namun kami akan membatasinya hanya pada beberapa appender tersebut.

layout

Ini bertanggung jawab untuk memformat informasi logging dalam gaya yang berbeda.

Kelas Logger menyediakan metode berbeda untuk menangani aktivitas logging. Ini menyediakan dua metode statis untuk mendapatkan Objek Logger.

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

Bagaimana log4j dikonfigurasi?

Untuk mengonfigurasi log4j kita harus memutuskan appender mana yang akan diimplementasikan. Oleh karena itu, parameter appender akan ditetapkan.

  • Kami akan menggunakan level DEBUG dan RollingFileAppender
  • Kami akan melakukan dua konfigurasi atau log,
  • Pertama: root logger, yang akan menulis semua log yang dihasilkan sistem dalam nama file yaitu Selenium.log
  • Kedua: Akan menulis informasi yang dihasilkan oleh perintah manual dalam kode ke dalam nama file- Manual.logs
  • Tata letaknya akan menjadi PatternLayout
  • #Pencatat akar

    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
    

    #Log Aplikasi

    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
    

    Dalam Contoh di atas, kami telah mengkonfigurasi log4j untuk login dua file berbeda bernama Selenium.log dan Manual.log.

    • file dan dest1 adalah dua pengidentifikasi.
    • "File" digunakan untuk memberi nama file di mana log akan disimpan
    • "maxFileSize" digunakan untuk mengonfigurasi ukuran maksimum file log. Ketika file mencapai ukuran ini, file baru akan dibuat dengan nama yang sama dan nama file lama akan ditambahkan sebagai Indeks ke dalamnya.
    • “maxBackupIndex” digunakan untuk mengonfigurasi jumlah maksimum file yang akan dicadangkan.
    • "tata letak" digunakan untuk mengatur format file log.
    • “Tambahkan” digunakan untuk mengatur fungsi penambahan. Jika disetel ke false, maka setiap kali file baru akan dibuat, bukan file lama yang akan digunakan untuk logging

    Bagaimana log4j digunakan dalam skrip?

    Dalam kode, kami telah menggunakan "log" sebagai variabel referensi yang mereferensikan metode getLogger dari Kelas Logger

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

    Gunakan variabel referensi “log” dan metode debug untuk mencatat informasi yang kita inginkan.

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

    Apa itu alat LogExpert?

    1. Alat LogExpert adalah alat untuk Windows dikembangkan untuk membuntuti kayu gelondongan
    2. Ini adalah penampil log sumber terbuka dan gratis.
    3. Ini adalah alat analisis log dengan berbagai fitur seperti pencarian, pemfilteran, penanda, dan penyorotan log
    4. Dalam log alat ini, file diperbarui secara otomatis saat dibuka
    5. Di alat ini, kita dapat membuka banyak file log di berbagai tab
    6. Kita juga dapat memberi komentar pada bookmark, dan terdapat tombol pintas untuk bernavigasi di antara berbagai bookmark. Kita juga dapat melihat daftar bookmark lengkap dan menavigasi dari sana
    7. Pintasan alat diberikan dalam file bantuan sehingga dapat dirujuk ke alat tersebut.

    Cara menggunakan Log4j di Selenium

    Langkah 1) In Eclipse buat proyek baru dengan nama log4j_demo

    Gunakan Log4j Masuk Selenium

    Langkah 2) Klik kanan pada src -> Build Path -> Konfigurasi Build Path

    Gunakan Log4j Masuk Selenium

    Langkah 3) Klik pada Perpustakaan dan Tambahkan Perpustakaan Log4J. Anda dapat mengunduhnya dari https://logging.apache.org/log4j/1.2/download.html

    Gunakan Log4j Masuk Selenium

    Langkah 4) Buat file baru. File ini akan mencakup semua konfigurasi log4j

    1. Klik kanan pada src -> Baru -> Lainnya -> Umum -> File
    2. Beri nama file sebagai “log4j.properties”
    3. Klik Selesai

    Buat dua file lagi dan beri nama seperti Selenium.logs dan Manual.logs. File-file ini akan berisi semua log yang dibuat oleh sistem dan pernyataan yang dicatat secara manual

    Gunakan Log4j Masuk Selenium

    Langkah 5) Di log4j.properties salin seluruh konfigurasi.

    Gunakan Log4j Masuk Selenium

    Langkah 6) Buat kelas utama:

    1. Klik kanan pada paket default -> Baru -> Kelas
    2. Berikan nama kelas dan klik selesai

    Gunakan Log4j Masuk Selenium

    Langkah 7) Salin kode berikut ke kelas utama

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

    Dalam kode di atas, kita mengunjungi https://healthunify.com/bmicalculator/dan verifikasi kalkulator BMI. Berat yang dimasukkan adalah 87KG dan tinggi 5 kaki 10 inci. Skrip memeriksa keluaran dalam satuan SE, AS, dan Inggris.

    Menggunakan Logger.getLogger(“devpinoyLogger”) kami membuat log tingkat sistem

    Menggunakan metode log.debug kami menyimpan data ke Manual.log

    Langkah 8) Jalankan skripnya. Buka lokasi Manual dan Selenium log untuk memeriksa data logging.

    Bagaimana alat LogExpert dapat digunakan untuk menganalisis log

    1. Unduh alat dari https://github.com/zarunbal/LogExpert . Buka folder unduhan LogExpert

      Alat LogExpert Dapat Digunakan Untuk Menganalisis Log

    2. Buka LogExpert.exe
    3. Klik File -> Buka dan Telusuri ke jalur di mana Manual.log dan SeleniumFile .log disimpan. Pilih berkasnya
    4. Pilih opsi “Ikuti ekor”.

      Alat LogExpert Dapat Digunakan Untuk Menganalisis Log

      Memilih opsi ikuti ekor memungkinkan tailing log yang berarti LogExpert secara otomatis memperbarui file log ketika skrip dalam tahap eksekusi. Jika kita menggunakan editor lain seperti notepad maka kita harus menutup dan membuka kembali file tersebut berulang kali untuk memperbarui log. Namun dengan ExpertTool dalam Mode Ikuti Ekor, hal ini tidak diperlukan.

      Gambar berikut menunjukkan tata letak log

      Alat LogExpert Dapat Digunakan Untuk Menganalisis Log

      Alat LogExpert Dapat Digunakan Untuk Menganalisis Log

    Dengan menggunakan alat LogExpert, seseorang dapat men-debug log yang dibuat oleh webdriver Selenium seperti yang bisa dilakukan alat ini

    • mencari teks dan ekspresi reguler apa pun,
    • membuat bookmark dan mengomentarinya dan juga dapat bernavigasi di antara bookmark yang tidak mungkin dilakukan di alat lain,
    • Filter log dan cari rentang teks dan juga dapat menerapkan filter lain ke log yang difilter sebelumnya,
    • Sorot baris yang berbeda berdasarkan beberapa kata tertentu.

    Alat ini juga membantu mempartisi data ke dalam kolom yang berbeda.