19 Pertanyaan dan Jawaban Wawancara TestNG Teratas (2025)
Berikut adalah pertanyaan dan jawaban wawancara TestNG untuk kandidat baru dan berpengalaman untuk mendapatkan pekerjaan impian mereka.
1) Apa itu TesNG?
TestNG adalah kerangka kerja pengujian sumber terbuka otomatis. Kerangka kerja ini berbasis pada kerangka kerja JUnit, tetapi bukan merupakan ekstensi JUnit.
Unduh PDF Gratis: Pertanyaan Wawancara TestNG
2) Apa saja fitur TestNG?
Fitur TestNG meliputi
- TestNG menggunakan lebih banyak fitur OO (berorientasi objek) dan Java
- Ini mendukung pengujian kelas terintegrasi
- Anotasi berbeda didukung
- Pisahkan kode pengujian waktu kompilasi dari info data/konfigurasi waktu proses
- Konfigurasi run-time fleksibel
- Pengaya yang fleksibel API
- Untuk fleksibilitas lebih lanjut, sematkan BeanShell
- Dukungan pengujian selenium multi-utas
- Mendukung pengujian paralel, pengujian beban, kegagalan parsial, metode pengujian bergantung
- Setelah kompilasi pengujian, permintaan dapat dibuat ke TestNG untuk menjalankan semua pengujian “front-end” atau “lambat”, “cepat”, “database”,
- Untuk kelas pengujian yang sama, dukungan TestNG untuk beberapa instance
- Untuk logging, tidak ada ketergantungan, fungsi JDK default untuk logging dan runtime
3) Sebutkan keunggulan TestNG dibandingkan Junit?
Keunggulan TestNG dibandingkan JUnit antara lain
- Dibandingkan dengan anotasi JUnit, TestNG mudah dimengerti
- Berbeda dengan JUnit, TestNG tidak perlu mendeklarasikan @Before Class dan @After Class
- Batasan nama metode tidak ada di TestNG
- TestNG memungkinkan Anda mengelompokkan kasus uji dengan mudah yang tidak mungkin dilakukan di JUnit
- TestNG mendukung tiga pengaturan tambahan berikut: @Before/After Suite, @Before/After Test dan @Before/After Group
- TestNG tidak perlu memperluas kelas apa pun
- Di TestNG, dimungkinkan untuk menjalankan kasus uji driver web Selenium secara paralel
- Berdasarkan grup TestNG memungkinkan Anda menjalankan kasus uji
- TestNG memungkinkan Anda menentukan kasus uji dependen; setiap kasus uji bersifat otonom terhadap kasus uji lainnya
4) Apa saja langkah dasar yang diperlukan dalam menulis tes TestNG?
Langkah-langkah dasar yang diperlukan dalam menulis TestNG meliputi
- Tuliskan logika bisnis pengujian Anda dan masukkan anotasi TestNG ke dalam kode Anda
- Dalam sebuah bangunan.xml atau pengujian.xml, tambahkan informasi tentang pengujian Anda
- Jalankan TestNG
5) Sebutkan berbagai cara di mana TestNG dapat dijalankan.
TestNG dapat dipanggil dengan berbagai cara seperti
- Menggunakan Gerhana
- Dengan semut
- Dari baris perintah
- Menggunakan IDE IntelliJ
6) Jelaskan penggunaan file testng.xml
File pengujian.xml menangkap seluruh pengujian Anda dalam XML. File ini memudahkan untuk menentukan semua rangkaian pengujian Anda dan parameternya dalam satu file, yang dapat Anda verifikasi di repositori kode atau kirim email ke rekan kerja. Ini juga memudahkan untuk mengeluarkan subset pengujian Anda atau membagi beberapa konfigurasi runtime.
7) Di TestNG bagaimana cara menonaktifkan tes?
Untuk menonaktifkan test case yang tidak Anda inginkan, Anda dapat menggunakan anotasi @Test(enabled = false).
8) Apa itu tes Time-Out di TestNG?
Tes Time-Out di TestNG tidak lain adalah waktu yang diberikan untuk melakukan pengujian unit. Jika pengujian unit gagal diselesaikan dalam batas waktu tertentu, TestNG akan mengabaikan pengujian perangkat lunak lebih lanjut dan menandainya sebagai kegagalan.
9) Jelaskan tes pengecualian
TestNG menyediakan opsi untuk melacak penanganan Pengecualian kode. Anda dapat menguji apakah suatu kode memberikan hasil yang diharapkan atau tidak. Parameter Pengecualian yang diharapkan tersedia bersama dengan anotasi @Test.
10) Apa yang dilakukan “tes suite” di TestNG?
"Suite Test" dilakukan ketika Anda harus menjalankan beberapa pengujian unit secara bersamaan. "Suite Test" menggabungkan pengujian unit ini. Berkas XML digunakan untuk menjalankan pengujian suite.
11) Apa itu Pengujian Parameterisasi?
Pengujian berparameter memungkinkan pengembang untuk menjalankan pengujian yang sama berulang kali menggunakan nilai yang berbeda. Dengan dua cara berbeda, TestNG memungkinkan Anda untuk meneruskan parameter langsung ke metode pengujian Anda.
- Dengan pengujian.xml
- Dengan Penyedia Data
12) Bagaimana Anda menjalankan pengujian JUnit menggunakan TestNG?
Anda dapat menjalankan pengujian JUnit menggunakan TestNG dengan
- Menempatkan perpustakaan JUnit di classpath TestNG sehingga dapat mencari dan menggunakan kelas JUnit
- Ubah test runner Anda dari JUnit menjadi TestNG di Ant, lalu jalankan TestNG dalam “mode campuran”. Ini akan membuat semua ujian Anda sama
Pendekatan ini juga memungkinkan Anda mengonversi pengujian JUnit yang ada ke TestNG.
13) Apa yang ditunjukkan oleh @Test(invocationCount=?) dan (threadPoolSize=?)?
- @Uji (threadPoolSize=?): Atribut threadPoolSize memberitahu TestNG untuk membentuk kumpulan thread untuk menjalankan metode pengujian melalui beberapa thread. Dengan kumpulan thread, waktu berjalan metode pengujian berkurang secara signifikan.
- @Tes(InvocationCount=?): Jumlah pemanggilan memberitahukan berapa kali TestNG harus menjalankan metode pengujian ini
14) Apa saja cara berbeda untuk membuat laporan hasil TestNG?
Ada dua cara untuk menghasilkan laporan dengan Test NG, yaitu
- Pendengar: Agar kelas pendengar dapat mengimplementasikan, kelas tersebut harus mengimplementasikan Antarmuka org.testng./TestListener. Kelas-kelas ini diinformasikan pada saat runtime oleh TestNG ketika tes dimulai, selesai, dilewati, lulus atau gagal.
- Wartawan: Agar kelas pelaporan dapat diimplementasikan, kelas tersebut harus mengimplementasikan antarmuka org.testng/Reporter. Ketika seluruh proses suite berakhir, kelas-kelas ini dipanggil. Saat dipanggil, objek yang berisi informasi seluruh pengujian yang dijalankan dikirimkan ke kelas ini.
15) Apa itu Tes Kelompok di TestNG?
Ini adalah fitur baru yang disertakan dalam TestNG; fitur ini memungkinkan Anda untuk membagi metode ke dalam bagian-bagian yang tepat dan mengelompokkan metode pengujian. Dengan pengujian grup, Anda tidak hanya dapat mendeklarasikan metode yang termasuk dalam grup, tetapi Anda juga dapat menentukan grup pengujian yang berisi grup lain. Grup ditentukan dalam berkas testing.xml Anda menggunakan pengujian grup.
16) Apa saja cara yang memungkinkan TestNG memungkinkan Anda menentukan dependensi?
TestNG memungkinkan Anda menentukan dependensi dengan dua cara
- Menggunakan atribut dependOnMethods dalam anotasi @Test
- Menggunakan atribut dependOnGroups dalam anotasi @Test
17) Apa artinya jika Anda harus meneruskan parameter menggunakan penyedia data di TestNG?
Ketika Anda harus meneruskan parameter kompleks yang akan dibuat dari Java, dalam hal ini parameter dapat diteruskan menggunakan penyedia data. Anotasi untuk penyedia data adalah @DataProvider. Anotasi ini hanya memiliki satu atribut string jika namanya tidak dideklarasikan; nama penyedia data secara otomatis menggunakan nama metode secara default. Penyedia data menghasilkan susunan dari benda.
18) Sebutkan berbagai metode untuk menjalankan tes di TestNG?
Pengujian di TestNG dijalankan menggunakan kelas TestNG. Untuk menjalankan pengujian dalam kerangka kerja pengujian TestNG, kelas ini merupakan titik masuk utama. Pengguna dapat membuat objek TestNG mereka sendiri dan memanggilnya dengan berbagai cara, seperti:
- Pada pengujian.xml yang sudah ada
- Pada pengujian sintetis.xml dibuat seluruhnya dari Java
- Dengan langsung menetapkan kelas tes
19) Berikan contoh kode TestNG
package firsttestngpackage; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.*; public class firsttestngfile { public String baseUrl = "http://demo.guru99.com/test/newtours/"; String driverPath = "C:\\geckodriver.exe"; public WebDriver driver ; @Test public void verifyHomepageTitle() { System.out.println("launching firefox browser"); System.setProperty("webdriver.firefox.marionette", driverPath); driver = new FirefoxDriver(); driver.get(baseUrl); String expectedTitle = "Welcome: Mercury Tours"; String actualTitle = driver.getTitle(); Assert.assertEquals(actualTitle, expectedTitle); driver.close(); } }
Pertanyaan wawancara ini juga akan membantu dalam viva Anda (lisan)
Bagus untuk Mempersiapkan Wawancara
Pada pertanyaan no 6, Anda telah menulis pengujian.xml alih-alih testng.xml
Terima kasih… ini sudah diperbaiki
Baris pertama dari pertanyaan ke-3 adalah “Kelebihan TestNG dibandingkan JUnit”.
Terima kasih atas pertanyaannya.
Kesalahan Diperbaiki!
11) Apa itu pengujian parametrik? Seharusnya Apa itu pengujian berparameter?
Hai, terima kasih sudah menulis. Itu ditinjau dan diperbarui.