Penanganan Pengecualian Selenium (Daftar Pengecualian Umum)

Daftar Isi:

Anonim

Apa itu Pengecualian?

Sebuah pengecualian adalah kesalahan yang terjadi pada saat pelaksanaan program. Namun, saat menjalankan program, bahasa pemrograman menghasilkan pengecualian yang harus ditangani untuk menghindari program Anda macet.

Pengecualian menunjukkan bahwa, meskipun peristiwa dapat terjadi, jenis peristiwa ini jarang terjadi. Jika metode tidak dapat menangani Pengecualian, metode tersebut akan dilemparkan ke fungsi pemanggilnya. Akhirnya, ketika pengecualian dibuang dari fungsi utama, program akan dihentikan secara tiba-tiba.

Dalam tutorial ini, Anda akan mempelajari:

  • Apa itu Pengecualian?
  • Pengecualian dalam driver Web Selenium
  • Menangani Pengecualian Selenium
  • Metode untuk menampilkan Exception

Pengecualian Umum dalam driver Web Selenium

Nama pengecualian Deskripsi
ElementNotVisibleException Jenis pengecualian Selenium ini terjadi ketika elemen yang ada di DOM memiliki fitur yang disetel sebagai tersembunyi.
ElementNotSelectableException Pengecualian Selenium ini terjadi ketika elemen disajikan di DOM, tetapi Anda dapat memilih. Oleh karena itu, tidak mungkin untuk berinteraksi.
NoSuchElementException Pengecualian ini terjadi jika elemen tidak dapat ditemukan.
NoSuchFrameException Pengecualian ini terjadi jika target bingkai yang akan dialihkan tidak ada.
NoAlertPresentException Pengecualian ini terjadi saat Anda beralih ke tidak ada peringatan yang disajikan.
NoSuchWindowException Pengecualian ini terjadi jika target jendela yang akan dialihkan tidak ada.
StaleElementReferenceException Pengecualian Selenium ini terjadi ketika elemen web dilepaskan dari DOM saat ini.
SessionNotFoundException WebDriver bekerja setelah Anda keluar dari browser.
TimeoutException Dilempar saat tidak ada cukup waktu untuk menyelesaikan suatu perintah. Misalnya, elemen yang dicari tidak ditemukan dalam waktu yang ditentukan.
WebDriverException Pengecualian ini terjadi saat WebDriver bertindak tepat setelah Anda menutup browser.
ConnectionClosedException Jenis Pengecualian ini terjadi saat ada pemutusan sambungan di driver.
ElementClickInterceptedException Perintah tidak dapat diselesaikan karena elemen yang menerima kejadian menyembunyikan elemen yang diminta untuk diklik.
ElementNotInteractableException Pengecualian Selenium ini muncul ketika elemen apa pun disajikan di DOM. Namun, tidak mungkin untuk berinteraksi dengan elemen seperti itu.
ErrorInResponseException Ini terjadi saat berinteraksi dengan ekstensi Firefox atau server driver jarak jauh.
ErrorHandler.UnknownServerException Pengecualian digunakan sebagai placeholder jika server mengembalikan kesalahan tanpa pelacakan tumpukan.
ImeActivationFailedException Harapan ini akan terjadi ketika aktivasi mesin IME gagal.
ImeNotAvailableException Ini terjadi saat dukungan IME tidak tersedia.
InsecureCertificateException Navigasi membuat agen pengguna mendapatkan peringatan sertifikat. Ini dapat disebabkan oleh sertifikat TLS yang tidak valid atau kedaluwarsa.
InvalidArgumentException Itu terjadi ketika sebuah argumen tidak termasuk dalam tipe yang diharapkan.
InvalidCookieDomainException Ini terjadi saat Anda mencoba menambahkan cookie di bawah domain yang berbeda, bukan di URL saat ini.
InvalidCoordinatesException Jenis Pengecualian ini cocok dengan operasi yang berinteraksi yang tidak valid.
InvalidElementStateExceptio Itu terjadi ketika perintah tidak dapat diselesaikan ketika elemen tidak valid.
InvalidSessionIdException Pengecualian ini terjadi ketika ID sesi yang diberikan tidak termasuk dalam daftar sesi aktif. Itu berarti sesi tidak ada atau juga tidak aktif.
InvalidSwitchToTargetException Hal ini terjadi jika target bingkai atau jendela yang akan dialihkan tidak ada.
JavascriptException Masalah ini terjadi saat menjalankan JavaScript yang diberikan oleh pengguna.
JsonException Ini terjadi ketika Anda mampu mendapatkan sesi saat sesi tidak dibuat.
NoSuchAttributeException Jenis Pengecualian ini terjadi ketika atribut elemen tidak dapat ditemukan.
MoveTargetOutOfBoundsException Ini terjadi jika target yang diberikan ke metodologi move () ActionChains tidak valid. Misalnya, keluar dari dokumen.
NoSuchContextException ContextAware melakukan pengujian perangkat seluler.
NoSuchCookieException Pengecualian ini terjadi ketika tidak ada cookie yang cocok dengan nama jalur yang diberikan untuk semua cookie terkait dari dokumen yang sedang dijelajahi.
NotFoundException Pengecualian ini adalah subkelas WebDriverException. Ini akan terjadi jika elemen di DOM tidak ada.
RemoteDriverServerException Pengecualian Selenium ini dilemparkan ketika server tidak merespons karena masalah kemampuan yang dijelaskan tidak tepat.
ScreenshotException Tidak mungkin menangkap layar.
SessionNotCreatedException Itu terjadi ketika sesi baru tidak berhasil dibuat.
UnableToSetCookieException Ini terjadi jika pengemudi tidak dapat mengatur cookie.
UnexpectedTagNameException Terjadi jika kelas pendukung tidak mendapatkan elemen web seperti yang diharapkan.
UnhandledAlertException Harapan ini terjadi ketika ada peringatan, tetapi WebDriver tidak dapat melakukan operasi Alert.
UnexpectedAlertPresentException Itu terjadi ketika ada munculnya peringatan yang tidak terduga.
UnknownMethodException Pengecualian ini terjadi ketika perintah yang diminta cocok dengan URL yang dikenal tetapi tidak cocok dengan metodologi untuk URL tertentu.
UnreachableBrowserException Pengecualian ini hanya terjadi jika browser tidak dapat dibuka atau rusak karena beberapa alasan.
UnsupportedCommandException Ini terjadi ketika WebDriver jarak jauh tidak mengirim perintah yang valid seperti yang diharapkan.

Menangani Pengecualian Selenium

Berikut, beberapa standar penting yang dapat digunakan untuk menangani Pengecualian di Selenium WebDriver:

Try-catch : Metode ini dapat menangkap Pengecualian, yang menggunakan kombinasi kata kunci coba dan tangkap. Perintah coba menunjukkan awal blok, dan Catch ditempatkan di akhir blok percobaan, yang membantu menyelesaikan Pengecualian.

mencoba{// Kode} menangkap (Pengecualian e) {// Kode untuk Penanganan pengecualian}
  • Beberapa blok tangkapan : Ada berbagai jenis Pengecualian, dan Anda dapat mengharapkan lebih dari satu pengecualian dari satu blok kode. Beberapa tangkapan membantu Anda menangani setiap jenis Pengecualian secara terpisah dengan blok kode yang terpisah. Ini dapat digunakan untuk lebih dari dua blok tangkapan, dan tidak ada batasan jumlah blok tangkapan.
mencoba{//Kode} tangkap (ExceptionType1 e1) {// Kode untuk Penanganan Pengecualian 1} tangkap (ExceptionType2 e2) {// Kode untuk Penanganan Pengecualian 2}
  • Throw : Saat Anda ingin membuat Exception, kata kunci Throw digunakan untuk membuang Exception untuk menanganinya dalam waktu proses. Saat Anda melempar Exception tanpa menanganinya, mereka perlu menggunakan kata kunci Throw.
public static void anyFunction () melempar Exception {coba {// tulis kode Anda di sini} Tangkap (Pengecualian b) {// Lakukan apapun yang kamu ingin lakukan// Lempar Pengecualian kembali ke sistemmelempar (b);}}
  • Beberapa Pengecualian : Anda dapat menyebutkan berbagai Pengecualian di klausa lemparan.
public static void anyFunction () melempar ExceptionType1, ExceptionType2 {coba {// tulis kode Anda di sini} tangkap (ExceptionType1 e1) {// Kode untuk menangani pengecualian 1} tangkap (ExceptionType1 e2) {// Kode untuk menangani pengecualian 2}
  • Terakhir : Kata kunci terakhir digunakan untuk membuat blok kode di bawah blok percobaan. Ini adalah kode terakhir yang membantu Anda untuk mengeksekusi terlepas dari terjadinya pengecualian
coba {//Kode} tangkap (ExceptionType1 e1) {// Tangkap blok} tangkap (ExceptionType2 e2) {// Tangkap blok} tangkap (ExceptionType3 e3) {// Tangkap blok} akhirnya {// Blok terakhir selalu dijalankan.}

Metode untuk menampilkan Exception

Anda juga dapat menggunakan metode berikut untuk menampilkan Informasi Pengecualian:

  • printStackTrace () : Fungsi ini mencetak jejak tumpukan, nama Pengecualian, dan deskripsi berguna lainnya.
  • toString () : Fungsi ini mengembalikan pesan teks yang menjelaskan nama pengecualian dan deskripsi.
  • getMessage () : Membantu menampilkan deskripsi Exception.

Ringkasan:

  • Pengecualian adalah kesalahan yang terjadi pada saat menjalankan program.
  • Try-catch: Metode ini dapat menangkap Pengecualian, yang menggunakan kombinasi kata kunci coba dan tangkap.
  • Beberapa tangkapan membantu Anda menangani setiap jenis Pengecualian secara terpisah dengan blok kode yang terpisah.
  • Throw keyword digunakan untuk membuang Exception untuk menanganinya dalam run time.
  • printStackTrace (): Fungsi ini mencetak jejak tumpukan, nama Pengecualian, dan deskripsi berguna lainnya
  • toString (): Fungsi ini mengembalikan pesan teks yang menjelaskan nama pengecualian dan deskripsi.
  • getMessage (): Membantu menampilkan deskripsi Exception.