Cara Menghasilkan Laporan Luas di Selenium

Diterbitkan: 2021-06-21

Pustaka sumber terbuka yang digunakan untuk otomatisasi pengujian di Selenium adalah ExtentReports. Kerangka pengujian; NUnit, JUnit, dll dapat diintegrasikan dengan perpustakaan. Laporan bawaan dibuat di selenium melalui kerangka kerja TestNG dan JUnit, tetapi laporan Tingkat masih menjadi pilihan pertama penguji Otomatisasi selenium. Laporan tingkat di Selenium memberikan lebih banyak wawasan tentang eksekusi skrip otomatisasi. Hasilnya digambarkan sebagai diagram lingkaran dan pada dasarnya adalah dokumen HTML. Apakah detail seperti snapshot, dan log khusus dapat dibuat melalui perpustakaan.

Setelah pengujian otomatis berhasil dijalankan, laporan pelaksanaan pengujian akan dibuat oleh penguji. Laporan default disediakan oleh TestNG, tetapi detailnya tidak disediakan. Dengan penerapan ExtentReport API, laporan interaktif dapat dibuat melalui konfigurasi sederhana. Kerangka kerja Java dan .Net seperti JUnit, NUnit, dan TestNG, dll. didukung oleh perpustakaan.

Ketergantungan maven laporan tingkat

Sumber

Laporan tingkat selenium terdiri dari dua kelas:

Daftar isi

1. Kelas ExtentReports

Penguji menentukan jalur dan berdasarkan jalur yang ditentukan, laporan HTML dihasilkan dari kelas ExtentReports. Entah ada pembuatan laporan baru atau penimpaan laporan yang sudah ada. Hal ini diputuskan berdasarkan nilai Boolean. Nilai default Boolean adalah “true” yang artinya akan terjadi penimpaan terhadap semua data yang ada sebelumnya.

2. Kelas ExtentTest

Langkah-langkah pengujian dicatat melalui kelas ExtentTest ke dalam laporan HTML yang dihasilkan melalui metode di atas.

3. Luas HtmlReporter

File HTML dibuat oleh kelas ini.

Fungsi bawaan yang terdaftar dapat digunakan dengan kelas yang tercantum di bawah ini.

  • startTest: Prakondisi kasus dalam pengujian dijalankan
  • endTest: Postconditions dari sebuah kasus dalam pengujian dijalankan.
  • Metode log: Status setiap langkah dalam pengujian dicatat ke dalam laporan HTML yang dihasilkan melalui Log.
  • Flush: Laporan baru dibuat dengan menghapus data pada laporan sebelumnya.

Nilai berikut digunakan untuk menunjukkan status tes: LULUS, SKIP, GAGAL, ​​dan INFO.

Cara membuat Laporan Luas

Beberapa prasyarat untuk menghasilkan laporan tingkat adalah:

  • Pra-instalasi dan pengaturan Java.
  • Instalasi TestNG.
  • Mengunduh Guci Laporan Tingkat (Versi 2.41.2).
  • Persyaratan sejauh-config.xml yang memungkinkan konfigurasi laporan HTML.

Langkah-langkah dasar yang harus diikuti untuk pembuatan laporan tingkat adalah:

  • Sebuah proyek pengujian akan dibuat.
  • Luasnya file jar laporan yang akan diunduh.
  • File jar laporan tingkat ditambahkan ke dalam proyek.
  • Kelas yang diimplementasikan dibuat.

Langkah-langkah untuk Menghasilkan Laporan Tingkat

  • Laporan tingkat dapat dibuat di WebDriver selenium melalui impor file jar yang merupakan extendedreports-java-2.41.2.jar. Isi file jar harus diekstraksi ke dalam direktori setelah diunduh.
  • File jar yang diekstrak dari file ZIP yang diunduh akan ditambahkan ke proyek pembangunan. Opsi Build Path -> Configure Build Path digunakan.
  • Kelas Java baru dibuat sejauh yang dilaporkan melalui kode berikut.

Sumber

Penjelasan kode

Dengan metode startTest, eksekusi pengujian dimulai. Objek laporan tingkat diinisialisasi. Objek laporan tingkat menggunakan jalur yang ditentukan pengguna sebagai parameter yang diteruskan ke sana.

@beforeclass: Penggunaan laporan tingkat ditunjukkan oleh kode.

@test: Tindakan berikut diotomatisasi melalui kelas ini:

  • Pembukaan browser chrome melalui URL www.google.com .
  • Judul halaman harus divalidasi dengan nilai seperti yang diharapkan setelah dibuka.
  • Status kasus pengujian akan dicatat sebagai LULUS atau GAGAL menggunakan metode log laporan tingkat.

@afterclass: Kode untuk eksekusi kasus postconditions pengujian disertakan dalam kelas ini. Ini termasuk kode untuk akhir tes atau pembilasan laporan. Tanpa menggunakan metode flush(), laporan tingkat di Selenium tidak akan dibuat.

Tangkap tangkapan layar di Laporan Tingkat

1. Melalui metode penangkapan

  • Ada beberapa manfaat menggunakan tangkapan layar selama pengujian.
  • Jika perangkat lunak mulai bertindak salah, maka penguji dapat mengidentifikasi masalah dengan mengamati tangkapan layar.
  • Oleh karena itu, jika eksekusi pengujian mengalami masalah, tangkapan layar akan memungkinkan penguji untuk men-debug skrip pengujian.
  • Tangkapan layar harus diambil hanya selama kegagalan pengujian, karena lebih banyak memori yang dikonsumsi oleh tangkapan.
  • Kode berikut yang digunakan untuk mengambil tangkapan layar diambil dari

Sumber

2. Penjelasan kode

  • Selenium WebDriver saat ini ditangkap sebagai tangkapan layar melalui metode getScreenShotAs(). Hal ini kemudian disimpan dalam berbagai bentuk output.

File scrFile = ((Mengambil Screenshot) driver).getScreenshotAs(OutputType.File);

  • Objek file dikembalikan melalui metode getScreenShotAs dan disimpan dalam variabel file. Untuk menggunakan metode ini, wajib untuk mentransmisikan instance driver web untuk mengambil tangkapan layar.

Tujuan File = File baru(“scr/../Errimages/” + System.currentTimeMillis()+ “.png”);

  • Folder dengan nama "ErrImages" dibuat di dalam folder "src" melalui kode di atas. File disimpan di folder yang dibuat dengan nama file sebagai waktu sistem saat ini.

String errflpath = Tujuan,getAbsolutePath();

Fileutils.copyFile(scrFile, Tujuan);

returnerrflpath;

  • Gambar kesalahan yang dihasilkan disalin dalam folder tujuan.

3. Metode Log

  • Metode bawaan digunakan dalam metode log. addScreenCapture dari kelas Extent digunakan untuk menangkap tangkapan layar dan kemudian ditambahkan ke laporan tingkat yang dihasilkan.

test.log(LogStatus.Fail,test.addScreenCapture(capture(driver))+ “Tes Gagal”);

Keuntungan Laporan Luas

  • Penggunaan laporan tingkat mudah.
  • Diagram lingkaran digunakan untuk menampilkan hasil.
  • Persentase kasus lulus tes disediakan.
  • Kemampuan untuk menambahkan detail lingkungan secara alami.
  • Dibandingkan dengan laporan lainnya, laporan tingkat menawarkan penyediaan penyesuaian.
  • Laporan yang lebih interaktif dapat dibuat melalui API tingkat. Laporan interaktif mungkin dalam bentuk tampilan grafis, tangkapan layar selama setiap langkah pengujian, tampilan dasbor, dan laporan yang dapat dikirim melalui email.
  • Integrasi dengan kerangka kerja JUnit, TestNG , dan NUnit dimungkinkan.
  • Eksekusi paralel uji coba dimungkinkan dengan pembuatan laporan tunggal untuk semua proses paralel.
  • Laporan dapat dikonfigurasi.
  • Untuk pelaksanaan setiap kasus uji, waktu yang dibutuhkan akan ditampilkan.
  • Pelacakan yang mudah untuk menjalankan beberapa kasus uji dalam satu rangkaian dimungkinkan.
  • Berdasarkan laporan pengujian, hasilnya dapat disaring. Juga, hasil bertahap dapat disaring melalui opsi lulus/gagal/info.
  • Kategorisasi laporan disediakan untuk kategori seperti Regresi/fungsional, dll.
  • Log dari langkah-langkah pengujian dapat ditambahkan ke laporan.

Contoh Laporan Luas di Selenium

Sebuah contoh ditampilkan untuk membuat Anda memahami proses pembuatan pakar laporan tingkat.

Langkah 1 : Proyek pakar dan kelas akan dibuat BasicExtentReport.java dengan tambahan kode yang tersedia di sini

  • File mandiri HTML dihasilkan dari kelas 'ExtentHtmlReporter'.
  • 'ExtentHtmlReporter(java.io.File)' diterima oleh kelas ini dan jalur 'ExtentHtmlReporter(java.lang.String filePath)'.
  • Jalur file dilewatkan untuk menyimpan laporan.
  • Metode config() dari kelas 'ExtentHtmlReporter' memungkinkan berbagai opsi untuk konfigurasi. Item dapat diubah melalui kode untuk melakukan perubahan tampilan laporan tingkat termasuk cap waktu, nama laporan, dll.
  • Status untuk setiap langkah pengujian dilaporkan oleh 'AfterMethod' dan dengan demikian status pengujian diperbarui seperti Lulus, Gagal, lewati, dll. jika terjadi kesalahan, sebuah pesan dibuat untuk memberikan informasi. Hal ini dilakukan melalui 'result.getThrowable()'.
  • Label status dibuat menggunakan kelas MarkupHelper yang juga mewarnai status laporan.

Langkah 2: Melewati OS dan parameter browser dilakukan dengan membuat file testng.xml. Kode tersedia di situs web yang disebutkan.

Langkah3: Kode lain ditambahkan ke file pom.cml.

Step4: Menjalankan program menghasilkan laporan yang dihasilkan .

Sumber

Untuk melihat laporan kegagalan, tes yang gagal harus diklik. Ini akan menampilkan status pengujian bersama dengan alasan kegagalan pengujian.

Beberapa hal tambahan yang berkaitan dengan laporan tingkat adalah:

  • Demi tampilan, tema yang ada dalam laporan dapat diubah.
  • Sesuai kenyamanan pengguna, tampilan dasbor dapat disembunyikan atau ditampilkan.
  • Dalam kasus menjalankan beberapa tes, kasus uji dapat dicari dengan cara langkah-demi-langkah.
  • Total waktu yang dibutuhkan untuk menjalankan tes termasuk waktu mulai dan waktu berakhir ditampilkan kepada pengguna.
  • Filter tambahan ada dalam laporan. Hasilnya dapat disaring sesuai dengan status tes seperti tes yang lulus, tes yang gagal, atau kasus uji di mana hanya ada informasi.

Pelajari Kursus Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Kesimpulan

Untuk pembuatan laporan yang dapat disesuaikan, laporan tingkat adalah cara terbaik. Menjadi perpustakaan sumber terbuka dengan konfigurasi yang mudah dengan selenium, laporan tingkat pasti menjadi pilihan terbaik untuk semua penguji otomatisasi. Artikel tersebut secara singkat membahas tentang luasnya laporan, cara membuatnya, dan kegunaannya. Manfaat dapat diperoleh melalui pengetahuan tentang pemrograman perangkat lunak yang merupakan dasar dari pembuatan laporan tingkat.

Jika Anda ingin mempelajari dan mengeksplorasi manfaat pemrograman perangkat lunak, lihat kursus Program PG Eksekutif dalam Pengembangan Perangkat Lunak – Spesialisasi dalam Pengembangan Full Stack , yang ditawarkan oleh upGrad . Ini adalah kursus yang dirancang khusus untuk para profesional tingkat pemula dalam kelompok usia 21 hingga 45 tahun. Menyediakan platform untuk kuliah online dan sesi interaktif dengan pengalaman langsung, kursus ini memberikan jaminan penempatan di industri teratas. Tim kami tersedia untuk setiap pertanyaan.

Apa itu pembuat laporan Selenium?

Selenium Report Builder atau Selenium IDE adalah plugin Firefox untuk Selenium yang membantu membuat dan mengedit kasus uji Selenium. Itu membuat proses otomatisasi menjadi lebih efisien dan mengurangi upaya yang diperlukan untuk membuat laporan yang berbeda. Ini adalah cara yang nyaman untuk menjalankan tes dan memberikan gambaran umum tentang status saat ini. Laporan dibuat dalam berbagai format seperti teks, PDF, CSV, HTML, dll.

Apa yang bisa diuji secara otomatis menggunakan Selenium?

Selenium adalah alat untuk mengotomatisasi aplikasi web untuk tujuan pengujian, dan dapat digunakan untuk pengujian regresi. Selenium dapat mengotomatiskan apa pun yang dapat dilakukan pengguna di browser. Sebagian besar situs web memiliki beberapa jenis fungsi yang memudahkan karyawan mereka untuk menyelesaikan tugas-tugas seperti memesan inventaris, memproses pesanan, memperbarui situs web, dll. Selenium dapat digunakan untuk menguji aplikasi dan situs web berbasis web. Ini adalah bahasa tingkat tinggi yang mendukung berbagai bahasa pemrograman seperti JAVA dan C#. Selenium digunakan untuk mengotomatisasi browser dan memberi pengembang aplikasi web kemampuan untuk menulis tes otomatis untuk dijalankan terhadap aplikasi web.

Apa itu Selenium Grid?

Selenium Grid adalah alat yang memungkinkan menjalankan tes otomatis di beberapa browser (atau node grid lainnya). Ini memungkinkan eksekusi paralel dari tes ini dengan beberapa konfigurasi (lokasi, browser, sistem operasi) dan beberapa browser sekaligus. Tes itu sendiri dapat dijalankan dalam mode tanpa kepala sehingga tidak memerlukan GUI sama sekali. Grid menawarkan eksekusi pekerjaan asinkron dan mampu mengelola ratusan pekerjaan secara bersamaan. Selenium grid dengan demikian merupakan model hub dan spoke untuk menjalankan kasus uji. Grid memungkinkan pengguna untuk menggabungkan beberapa browser untuk menjalankan satu kasus uji. Setelah diatur, ini dapat digunakan untuk menjalankan pengujian di beberapa mesin atau browser sesuai permintaan atau sesuai jadwal. Selenium Grid dapat digunakan untuk memparalelkan pelaksanaan pengujian, pengujian skala, dan meningkatkan cakupan pengujian.