Penegasan dengan std.testing
expect, expectEqual dan rakan-rakannya.
Penegasan dengan std.testing ialah pelajaran Zig Academy percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Zig Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Zig Academy merangkumi sejumlah 4 pelajaran.
Ruang Nama testing
Pembantu penegasan Zig berada dalam std.testing. Masukkannya ke dalam nama pendek supaya setiap semakan mudah dibaca di dalam blok ujian anda.
const testing = std.testing;expect untuk Boolean
Pembantu yang paling mudah ialah expect. Ia menerima satu boolean dan menggagalkan ujian apabila syarat itu palsu.
try testing.expect(value > 0);Pembantu Mengembalikan Ralat
Setiap pembantu pengujian mengembalikan ralat apabila gagal, jadi anda sentiasa meletakkan try di hadapannya. Itulah yang membuatkan ujian berhenti dan melaporkan kegagalan.
expectEqual untuk Nilai
Untuk membandingkan dua nilai, gunakan expectEqual. Ia menyemak kesamaan dan, apabila gagal, mencetak nilai yang dijangka serta nilai sebenar.
try testing.expectEqual(5, add(2, 3));Nilai Dijangka Didahulukan
Dengan expectEqual, argumen pertama ialah nilai yang dijangka dan argumen kedua ialah hasil kod anda. Susunan ini membentuk mesej kegagalan.
try testing.expectEqual(42, result);Membandingkan Slaid
Dua slaid adalah sama apabila elemennya sepadan, bukannya penunjuknya. Gunakan expectEqualSlices dan nyatakan jenis elemen itu.
try testing.expectEqualSlices(u8, "hi", out);Membandingkan Rentetan
Untuk teks, expectEqualStrings membandingkan dua slaid bait dan mencetak perbezaan yang mudah dibaca apabila kedua-duanya tidak sepadan, sesuai untuk menyemak keluaran.
try testing.expectEqualStrings("ok", msg);Membuat Penegasan terhadap Ralat
Kadang-kadang panggilan sepatutnya gagal. Balutkannya dengan expectError untuk menegaskan bahawa ia mengembalikan ralat tertentu dan bukannya nilai.
try testing.expectError(error.Bad, parse("x"));Nombor Titik Terapung Anggaran
Nombor titik terapung jarang sepadan dengan tepat. Gunakan expectApproxEqAbs dengan toleransi kecil supaya perbezaan pembundaran yang kecil tidak menggagalkan ujian anda.
try testing.expectApproxEqAbs(1.0, x, 0.001);Baca Keluaran Kegagalan
Apabila penegasan gagal, Zig mencetak nilai yang dijangka dan nilai sebenar terus dalam laporan. Perbezaan itu biasanya menunjukkan pepijat dengan tepat.
Pilih Pembantu yang Betul
Padankan pembantu dengan data: expectEqual untuk skalar, pembantu slaid dan rentetan untuk jujukan, serta expectError untuk laluan kegagalan.
Semakan Pantas
Anda perlu menegaskan bahawa dua nilai teks adalah sama sepenuhnya dalam satu ujian. Pembantu manakah yang paling sesuai?
Ringkasan
Anda telah mempelajari kit alat std.testing: expect, expectEqual, semakan slaid dan rentetan, serta expectError. Setiap satunya memerlukan try di hadapan. ✅
Pelajari Zig dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “Penegasan dengan std.testing” percuma?
Ya — teks penuh “Penegasan dengan std.testing” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Zig Academy, tingkat taraf kepada CoddyKit PRO. Kursus Zig Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Penegasan dengan std.testing”?
expect, expectEqual dan rakan-rakannya. Anda berlatih Zig Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Zig Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Zig Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Penegasan dengan std.testing” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Zig Academy ini?
Ya. Setiap pelajaran Zig Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Menulis Blok test
- Penegasan dengan std.testing
- Pengagih Testing Mengesan Kebocoran
- Menjalankan dan Menapis Tests