Pengujian Spring (WebTestClient/JUnit)
Tulis ujian ringan untuk pengawal menggunakan WebTestClient dan asas JUnit.
Pengujian Spring (WebTestClient/JUnit) ialah pelajaran Java Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. 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 Java Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Java Academy merangkumi sejumlah 3 pelajaran.
Pengenalan
Matlamat: memahami asas JUnit dan cara WebTestClient membuat panggilan HTTP kepada pengawal anda dalam ujian.
Asas JUnit
JUnit menyediakan penegasan dan kaedah ujian. Dalam Spring Boot, anda menjalankan ujian dengan SpringExtension atau @SpringBootTest.
Kod: idea penegasan
Ujian membandingkan jangkaan dengan hasil sebenar dan melaporkan keputusan yang jelas; JUnit mengautomatikkan idea ini.
public class Main {
// Simple, runnable demo of assertion-like checks (not JUnit), prints PASS/FAIL.
static void assertEquals(int expected, int actual, String name) {
if (expected == actual) {
System.out.println(name + ": PASS");
} else {
System.out.println(name + ": FAIL expected " + expected + " but was " + actual);
}
}
public static void main(String[] args) {
// Pretend we test a controller method that adds numbers.
int sum = 2 + 3; // pretend controller result
assertEquals(5, sum, "addsTwoNumbers");
}
}
Gambaran keseluruhan WebTestClient
WebTestClient menghantar permintaan HTTP kepada pengawal anda dalam ujian serta menyemak status, pengepala dan isi kandungan.
Kod: aliran permintaan → pengesahan
Ujian sebenar menggunakan WebTestClient dan bukannya mock ini, tetapi alirannya serupa: permintaan → pengendali → pengesahan.
public class Main {
// Simulate an HTTP test: build request, call handler, verify response.
static String handleHello(String path) {
// pretend controller:
if ("/hello".equals(path)) return "Hello";
return "404";
}
public static void main(String[] args) {
String response = handleHello("/hello");
if ("Hello".equals(response)) {
System.out.println("GET /hello -> 200 OK, body=Hello (PASS)");
} else {
System.out.println("GET /hello -> FAIL");
}
}
}
Kod: sahkan laluan ralat
Dalam WebTestClient, anda akan menegaskan kod status dan muatan ralat pilihan.
public class Main {
// Simulate verifying error responses.
static int deleteUser(long id) {
// pretend service: only id 1 exists
if (id == 1L) return 204; // No Content
return 404; // Not Found
}
public static void main(String[] args) {
int status = deleteUser(99L); // should be 404 in our scenario
if (status == 404) {
System.out.println("DELETE /users/99 -> 404 (PASS)");
} else {
System.out.println("DELETE /users/99 -> FAIL got " + status);
}
}
}
Semakan WebTestClient
Semakan pantas: WebTestClient biasanya digunakan untuk apa?
Rumusan
Rumusan: JUnit = penegasan dan kaedah ujian. WebTestClient = pengujian HTTP untuk pengawal. Sahkan status dan isi kandungan dengan jelas.
Pelajari Java 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
- 104
- Pelajaran
- 374
Soalan Lazim
Adakah pelajaran “Pengujian Spring (WebTestClient/JUnit)” percuma?
Ya — teks penuh “Pengujian Spring (WebTestClient/JUnit)” 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 Java Academy, tingkat taraf kepada CoddyKit PRO. Kursus Java Academy merangkumi sejumlah 3 pelajaran.
Apakah yang akan saya pelajari dalam “Pengujian Spring (WebTestClient/JUnit)”?
Tulis ujian ringan untuk pengawal menggunakan WebTestClient dan asas JUnit. Anda berlatih Java 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 Java Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Java 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 1 daripada 3.
Berapa lamakah pelajaran “Pengujian Spring (WebTestClient/JUnit)” 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 Java Academy ini?
Ya. Setiap pelajaran Java 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
- Pengujian Spring (WebTestClient/JUnit)
- Konfigurasi dan Profil
- Pembungkusan dan Pelaksanaan