Swift Academy · Pelajaran

Keluarga XCTAssert dan Pernyataan yang Melempar Error

Menggunakan XCTAssertEqual, XCTAssertThrowsError, dan XCTUnwrap dengan aman.

Pelajaran 2 dari 413 langkah

Keluarga XCTAssert dan Pernyataan yang Melempar Error adalah pelajaran Swift Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Swift Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Swift Academy mencakup 4 pelajaran total.

XCTAssert dan XCTAssertTrue

XCTAssert dan XCTAssertTrue gagal jika kondisi bernilai salah.

XCTAssert(user.isLoggedIn)
XCTAssertTrue(cart.isEmpty, "Cart should be empty after clear()")

XCTAssertFalse

XCTAssertFalse gagal jika kondisi bernilai benar.

XCTAssertFalse(session.isExpired, "Fresh session should not be expired")

XCTAssertEqual

XCTAssertEqual gagal jika kedua nilai tidak sama. Kedua nilai harus berupa Equatable.

XCTAssertEqual(calculator.add(2, 3), 5)
XCTAssertEqual(user.name, "Alice", "Name should match the fixture")

XCTAssertNotEqual

XCTAssertNotEqual gagal jika kedua nilai sama.

XCTAssertNotEqual(originalHash, updatedHash)

XCTAssertNil dan XCTAssertNotNil

Uji nilai opsional: gagal jika nilainya bukan nil / nil, masing-masing.

XCTAssertNil(service.error, "No error expected after successful fetch")
XCTAssertNotNil(result, "Result should be non-nil on success")

XCTAssertThrowsError

Gagal jika ekspresi TIDAK melemparkan kesalahan. Anda juga dapat memeriksa kesalahan yang dilemparkan.

XCTAssertThrowsError(try parser.parse("invalid json")) { error in
  XCTAssertEqual(error as? ParseError, .invalidInput)
}

XCTAssertNoThrow

Gagal jika ekspresi MEMANG melemparkan kesalahan.

XCTAssertNoThrow(try parser.parse(validJSON))

XCTUnwrap

XCTUnwrap membuka nilai Optional dan menggagalkan pengujian jika nilainya nil—lebih rapi daripada guard let + XCTFail.

let user = try XCTUnwrap(service.currentUser)
XCTAssertEqual(user.name, "Bob")

XCTAssertEqual dengan Akurasi

Untuk perbandingan bilangan titik mengambang, tentukan nilai akurasi agar perbedaan presisi dapat diperhitungkan.

XCTAssertEqual(result, 3.14159, accuracy: 0.0001)

Pesan Kegagalan Kustom

Semua fungsi XCTAssert menerima parameter pesan opsional untuk menghasilkan keluaran kegagalan yang lebih jelas.

XCTAssertEqual(items.count, 3, "Expected 3 items after insert, got \(items.count)")

XCTExpectFailure

Tandai kegagalan yang diharapkan agar dilaporkan sebagai keberhasilan di CI—berguna untuk bug yang sudah diketahui tetapi belum diperbaiki.

XCTExpectFailure("Known issue: rdar://12345") {
  XCTAssertEqual(brokenFunction(), expectedValue)
}

Pemeriksaan Singkat

Fungsi XCTest mana yang membuka nilai Optional dengan aman dan menggagalkan pengujian jika nilainya nil?

Rangkuman Pelajaran

Keluarga pernyataan XCTest: XCTAssert/True/False, XCTAssertEqual/NotEqual, XCTAssertNil/NotNil, XCTAssertThrowsError/NoThrow, dan XCTUnwrap. Selalu tambahkan pesan yang deskriptif. Gunakan XCTExpectFailure untuk kegagalan yang telah diketahui dan dilacak.

Gratis untuk memulai

Belajar Swift dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
122
Pelajaran
409

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Keluarga XCTAssert dan Pernyataan yang Melempar Error” gratis?

Ya — teks lengkap “Keluarga XCTAssert dan Pernyataan yang Melempar Error” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Swift Academy, upgrade ke CoddyKit PRO. Kursus Swift Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Keluarga XCTAssert dan Pernyataan yang Melempar Error”?

Menggunakan XCTAssertEqual, XCTAssertThrowsError, dan XCTUnwrap dengan aman. Kamu berlatih Swift Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Swift Academy?

Tidak diperlukan pengalaman sebelumnya. Swift Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Keluarga XCTAssert dan Pernyataan yang Melempar Error” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Swift Academy ini?

Ya. Setiap pelajaran Swift Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Penyiapan, Pembongkaran, dan Metode Pengujian XCTestCase
  2. Keluarga XCTAssert dan Pernyataan yang Melempar Error
  3. Mocking Berbasis Protokol dan Injeksi Dependensi
  4. Pengujian Async dan Pengukuran Kinerja
← Kembali ke Swift Academy