Yang Perlu Anda Ketahui Tentang Anotasi TestNG di Selenium



Artikel tentang Anotasi TestNG di Selenium ini akan membantu Anda memahami berbagai anotasi yang didukung TestNG di Selenium dengan bantuan contoh.

Sejak konsep telah diperkenalkan, banyak metodologi pengujian telah berkembang, paradigma telah berubah tetapi persyaratannya entah bagaimana menang untuk tetap konstan. Salah satu metodologi tersebut adalah TestNG yang membantu kami mengelompokkan kasus uji ke dalam beberapa bagian kode dengan bantuan Anotasi. Tapi bagaimana cara kerjanya? Mari kita pahami konsep ini melalui media artikel ini di TestNG Annotations in .

Saya akan membahas topik-topik yang disebutkan di bawah dalam artikel ini:





framework hybrid di selenium webdriver

Pengantar TestNG

TestNG berdiri untuk Uji Generasi Berikutnya dan ini adalah kerangka kerja otomatisasi pengujian sumber terbuka yang terinspirasi oleh JUnit dan NUnit. Baik, TestNG tidak hanya terinspirasi tetapi, ini adalah versi yang ditingkatkan dari dua kerangka kerja ini. Jadi apa upgrade disini? Peningkatan dengan TestNG adalah menyediakan fungsionalitas tambahan seperti anotasi pengujian, pengelompokan, prioritas, parameterisasi, dan teknik pengurutan dalam kode yang sebelumnya tidak mungkin dilakukan.

Pengantar TestNG - TestNG Annotations - EdurekaIni tidak hanya mengelola kasus uji, tetapi bahkan laporan pengujian terperinci juga dapat diperoleh dengan menggunakan TestNG. Akan ada ringkasan rinci yang akan menampilkan jumlah kasus uji yang gagal. Selain itu, bug dapat ditemukan secara akurat dan diperbaiki paling awal. Sekarang setelah Anda mengetahui apa itu TestNG, mari kita lihat mengapa menggunakan TestNG di Selenium.



Mengapa menggunakan TestNG di Selenium?

Pengembang perangkat lunak dari seluruh dunia dengan suara bulat akan setuju bahwa menulis kode dalam kasus uji menghemat sebagian besar waktu debugging mereka. Mengapa? Itu karena kasus uji membantu dalam membuat kode yang kuat dan bebas kesalahan dengan memecah seluruh kode menjadi kasus uji yang lebih kecil, lalu dengan mengevaluasi setiap kasus uji ini ke kondisi lulus / gagal, Anda dapat membuat kode bebas kesalahan. Sejak tidak mendukung eksekusi kode dalam kasus uji, TestNG masuk ke dalam gambaran yang akan membantu dalam eksekusi kasus uji.

TestNG juga mendukung fitur-fitur berikut:

  • Ini menghasilkan laporan dalam format yang tepat yang mencakup sejumlah kasus pengujian yang dijalankan, jumlah kasus pengujian yang gagal, dan kasus pengujian yang telah dilewati.
  • Beberapa kasus uji dapat dikelompokkan lebih mudah dengan mengubahnya menjadi file TestNG.xml. Di sini, Anda dapat mengatur prioritas untuk menjalankan kasus uji.
  • Menggunakan TestNG, Anda dapat menjalankan beberapa kasus pengujian di beberapa browser, yaitu, pengujian lintas browser .
  • Kerangka kerja pengujian dapat dengan mudah diintegrasikan dengan alat seperti Maven, Jenkins, dll.

Sekarang setelah Anda mengetahui apa itu TestNG dan mengapa itu digunakan, mari melangkah lebih jauh dan mengetahui berbagai Anotasi yang didukung TestNG di Selenium.

TestNG Annotations

TestNG Annotations di Selenium digunakan untuk mengontrol metode selanjutnya yang akan dijalankan. Anotasi pengujian ditentukan sebelum setiap metode dalam kode pengujian. Jika ada metode yang tidak diawali dengan anotasi, maka metode itu akan diabaikan dan tidak akan dijalankan sebagai bagian dari kode pengujian. Untuk mendefinisikannya, metode hanya perlu dianotasi dengan ' @Uji '.



Jenis Anotasi TestNG:

Di bawah ini adalah daftar anotasi yang didukung oleh TestNG di selenium.

  • @Before: Metode dengan anotasi ini akan dijalankan sebelum setiap @uji metode beranotasi.
  • @AfterMethod: Ini anotasi akan dieksekusi setelah setiap @uji metode beranotasi.
  • @Sebelum kelas: Anotasi ini akan dieksekusi sebelumnya @Test pertama eksekusi metode. Ini hanya berjalan sekali per kelas.
  • @ AfterClass: T anotasinya akan dijalankan setelah semua metode pengujian di kelas saat ini dijalankan
  • @BeforeTest: Metode dengan anotasi ini akan dijalankan sebelumnya @Test pertama metode beranotasi.
  • @AfterTest: Metode dengan anotasi ini akan dijalankan ketika semua @Uji metode beranotasi menyelesaikan eksekusi kelas-kelas yang berada di dalam tag insidetag TestNG.xml mengajukan.
  • @BeforeSuite: Anotasi ini akan berjalan hanya sekali sebelumnya semua tes di suite telah berjalan
  • @Setelahnya: Metode dengan anotasi ini akan berjalan sekali setelah eksekusi semua pengujian di suite telah berjalan
  • @BeforeGroup: Metode beranotasi ini akan berjalan sebelum pengujian pertama dijalankan dari kelompok tertentu itu.
  • @AfterGroup: Metode beranotasi ini akan berjalan setelah semua metode pengujian dari grup tersebut menyelesaikan eksekusinya.

Jadi ini semua tentang Anotasi di TestNG. Sekarang mari melangkah lebih jauh dan memahami cara menulis kasus uji pertama menggunakan TestNG.

Membuat Kasus Uji menggunakan Anotasi TestNG

Berbagai langkah yang terlibat dalam membuat kasus uji menggunakan TestNG Annotation adalah sebagai berikut:

  1. Buat proyek dan tambahkan Perpustakaan TestNG.
  2. Buat file kelas dan kode program
  3. Terakhir, tulis file XML dan jalankan di TestNG Suite.

Jika Anda ingin mengetahui lebih detail tentang menulis kasus uji menggunakan TestNG, silakan periksa artikel ini di Tutorial TestNG . Sekarang, mari melangkah lebih jauh dan memahami bagaimana anotasi TestNG akan membantu Anda mengelompokkan kasus uji dan mengonfigurasi program Anda.

Kasus Uji 1:

Dalam kasus uji ini, saya akan menggunakan tiga Anotasi dan kode program yang berbeda. Mari kita pahami bagaimana melakukannya dengan contoh di bawah ini.

paket co.edureka.pages import org.openqa.selenium.WebDriver import org.openqa.selenium.chrome.ChromeDriver import org.testng.Assert import org.testng.annotations.AfterTest import org.testng.annotations.BeforeTest import org.testng .annotations.Test public class AnnotationExample {public String baseUrl = 'https://www.edureka.co/' String driverPath = 'C: //Users//Neha_Vaidya//Desktop//chromedriver_win32//chromedriver.exe' public WebDriver driver @BeforeTest public void launchBrowser () {System.out.println ('meluncurkan browser Chrome') System.setProperty ('webdriver.chrome.driver', driverPath) driver = new ChromeDriver () driver.get (baseUrl)} @Test public void verifikasiHomepageTitle () String expectedTitle = 'Pelatihan Online Dipimpin Instruktur dengan Dukungan Seumur Hidup 24x7 @AfterTest public void terminateBrowser () {driver.close ()}}

Pada dasarnya, saya ingin memeriksa apakah judul sebenarnya dari halaman web Edureka sesuai dengan judul yang diharapkan atau tidak. Jadi, saya pertama kali menggunakan ' @Tokopedia Anotasi dan membuat contoh driver browser dan menavigasi melalui situs web Edureka menggunakan driver.get () metode. Jadi inilah langkah-langkah yang harus dilakukan sebelum ujian.

Selanjutnya, selama tes ini, saya ingin memeriksa apakah judul yang diharapkan dan judul sebenarnya cocok atau tidak. Itulah mengapa saya menentukan semua langkah dengan Anotasi @Test. Akhirnya, saya ingin menutup driver dan menghentikan browser setelah pengujian. Itulah mengapa saya menggunakan @After Anotasi dan penutupan pengemudi. Jadi begini cara saya mengelompokkan seluruh kode ke dalam berbagai anotasi dan menjalankan kasus uji. Jalankan programnya sebagai TestNG Test dan periksa hasilnya.

Anda dapat melihat di snapshot bahwa kasus pengujian berjalan dengan sukses pada pengujian dan rangkaian default. Selain itu, kasus uji lulus dan tidak ada kegagalan juga.

Sekarang mari kita lihat satu contoh lagi untuk memahami aliran eksekusi berbagai anotasi secara mendalam. Sangatlah penting untuk mengetahui alur pelaksanaan anotasi. Jadi, mari kita lihat cuplikan di bawah ini untuk mengetahuinya.

cara membuat parameter di tablo

Alur eksekusi anotasi akan seperti yang ditunjukkan pada snapshot di atas. Sekarang mari kita lihat satu contoh lagi untuk memahami hal yang sama.

Kasus Uji 2:

paket co.edureka.pages impor org.testng.annotations.AfterClass impor org.testng.annotations.AfterMethod impor org.testng.annotations.AfterSuite impor org.testng.annotations.AfterTest impor org.testng.annotations.BeforeClass import org.testng .annotations.BeforeMethod import org.testng.annotations.BeforeSuite import org.testng.annotations.BeforeTest import org.testng.annotations.Test public class testngAnnotations {// Test Case 1 @Test public void testCase1 () {System.out.println ('Test Case 1')} // Test Case 2 @Test public void testCase2 () {System.out.println ('Test Case 2')} @BeforeMethod public void beforeMethod () {System.out.println ('Before Metode ')} @AfterMethod public void afterMethod () {System.out.println (' After Method ')} @BeforeClass public void beforeClass () {System.out.println (' Before Class ')} @AfterClass public void afterClass ( ) {System.out.println ('After Class')} @BeforeTest public void beforeTest () {System.out.println ('Before Test')} @AfterTest public void afterTest () {System.out.println ('After Test')} @BeforeSuite public void beforeSuite () {System.out.println ('Before Suite')} @AfterSuite public void afterSuite () {System.out.println ( 'Setelah Suite')}}

Dalam kode di atas, saya menulis secara acak semua metode dengan Anotasi. Saya tidak mengikuti urutannya. Tapi, ketika saya menjalankan program, itu akan mengikuti urutan yang sama. Sekarang mari kita periksa hasilnya.

[RemoteTestNG] mendeteksi TestNG versi 6.14.2 Sebelum Suite Sebelum Tes Sebelum Kelas Sebelum Metode Uji Kasus 1 Setelah Metode Sebelum Metode Kasus Uji 2 Setelah Metode Setelah Kelas Setelah Tes LULUS: testCase1 LULUS: testCase2 =========== ==================================== Tes default Tes dijalankan: 2, Kegagalan: 0, Lewati: 0 =============================================== Setelah Suite = ============================================== Suite default Total tes run: 2, Kegagalan: 0, Lewati: 0 ======================================= ========

Dari output di atas, Anda dapat melihat bahwa itu mengeksekusi kasus uji dan Before Suite dan After Suite hanya dijalankan satu kali. Selain itu, pengujian berjalan dengan sukses pada pengujian dan rangkaian default. Ini adalah bagaimana Anda perlu menjalankan kasus uji menggunakan Anotasi.Jadi itu membawa kita ke akhir artikel ini tentang Anotasi TestNG di Selenium.

Saya harap Anda memahami konsepnya dan itu menambah nilai pengetahuan Anda. Sekarang, jika Anda ingin mendapatkan lebih banyak wawasan tentang Selenium, Anda dapat membaca artikel di .

Jika Anda menemukan 'Anotasi TestNG di Selenium 'Relevan, lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar TestNG Annotations di Selenium artikel dan kami akan menghubungi Anda kembali.