cari
RumahJavajavaTutorialRangka Kerja Pengujian Unit JUnit: Tutorial Pemula

Rangka Kerja Pengujian Unit JUnit: Tutorial Pemula

Apr 18, 2024 pm 01:51 PM
Ujian unitjunit

JUnit ialah rangka kerja ujian unit untuk Java yang menyediakan alatan mudah untuk menguji komponen aplikasi. Setelah kebergantungan dipasang, anda boleh menguji kelas dengan menulis kelas ujian unit yang mengandungi anotasi @Test dan mengesahkan nilai yang dijangka dan sebenar menggunakan kaedah penegasan seperti assertEquals. JUnit menyediakan banyak ciri seperti menyediakan kaedah, mesej kegagalan dan mekanisme tamat masa.

Rangka Kerja Pengujian Unit JUnit: Tutorial Pemula

Rangka Kerja Pengujian Unit JUnit: Tutorial Pemula

Pengenalan

JUnit ialah rangka kerja ujian unit yang digunakan secara meluas dalam bahasa Java. Ia menyediakan set alat yang ringkas namun berkuasa yang membolehkan pembangun menguji komponen aplikasi dengan mudah.

Pasang

Pengurus Kebergantungan. Tambahkan baris kebergantungan berikut:

dependencies {
  testImplementation "junit:junit:4.13.2"
}

Jika memuat turun secara manual, sila tambah fail junit-4.13.2.jar ke laluan kelas. junit-4.13.2.jar 文件添加到类的路径中。

实战案例

创建一个名为 Counter 的简单的 Java 类:

public class Counter {

    int count = 0;

    public void increment() {
        count++;
    }

    public int getCount() {
        return count;
    }
}

接下来,编写一个单元测试类 CounterTest 来测试 Counter 类:

import static org.junit.Assert.*;

public class CounterTest {

    @Test
    public void testIncrement() {
        Counter counter = new Counter();

        // 执行待测试方法
        counter.increment();

        // 断言预期值和实际值相等
        assertEquals(1, counter.getCount());
    }
}

testIncrement 方法中:

  • @Test 注解标记此方法为一个测试方法。
  • 使用 assertTrueassertEquals 断言预期结果和实际结果相匹配。

运行测试

使用以下命令从命令行运行测试:

mvn test

断言

JUnit 提供多种断言方法,包括:

  • assertTrue: 测试实际值为真。
  • assertFalse: 测试实际值为假。
  • assertEquals: 测试预期值和实际值相等。
  • assertNotEquals
Kes praktikal

Buat kelas Java ringkas bernama Counter:

rrreee
    Seterusnya, tulis kelas ujian unit CounterTest untuk menguji Counter kelas:
  • rrreeeDalam kaedah testIncrement:
  • @Test anotasi menandakan kaedah ini sebagai kaedah ujian. Gunakan assertTrue atau assertEquals untuk menegaskan bahawa hasil yang dijangkakan sepadan dengan hasil sebenar.
  • Jalankan ujian
🎜Jalankan ujian dari baris arahan menggunakan: 🎜rrreee🎜🎜Assertion🎜🎜🎜JUnit menyediakan pelbagai kaedah penegasan, termasuk: 🎜🎜🎜>Kod Ujian nilai sebenar adalah benar. 🎜🎜assertFalse: Uji bahawa nilai sebenar adalah palsu. 🎜🎜assertEquals: Menguji bahawa nilai dijangka dan nilai sebenar adalah sama. 🎜🎜assertNotEquals: Menguji bahawa nilai yang dijangkakan dan nilai sebenar adalah tidak sama. 🎜🎜🎜🎜Ciri-ciri lain🎜🎜🎜🎜🎜Kaedah penyediaan (BeforeEach/AfterEach)🎜 dilaksanakan sebelum/selepas setiap kaedah ujian. 🎜🎜🎜Mesej kegagalan (gagal)🎜 Paparkan mesej tersuai apabila ujian gagal. 🎜🎜🎜Tamat masa🎜 Tetapkan had masa untuk kaedah ujian. 🎜🎜

Atas ialah kandungan terperinci Rangka Kerja Pengujian Unit JUnit: Tutorial Pemula. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Prestasi jvm vs bahasa lainPrestasi jvm vs bahasa lainMay 14, 2025 am 12:16 AM

JVM'sperformanceiscompetitiveWithotherRuntimes, menawarkanbalanceofspeed, keselamatan, dan produktiviti.1) jvmusesjitcompilationfordynamiciptimizations.2) c menawarkanSnativePerformanceButLacksjvm'sSafetyFeatures.3) pythonissloweSiSiSiSiSiSiS.3) pythonissloweSiSiSiSiSiS.3) pythonissloweSiSiSiSiSiS.3)

Kemerdekaan Platform Java: Contoh PenggunaanKemerdekaan Platform Java: Contoh PenggunaanMay 14, 2025 am 12:14 AM

Javaachievesplatformindependencethroughthejavavirtualmachine (jvm), membenarkancodetorunonanyplatformwithajvm.1) codeiscompiledintobytecode, notmachine-specificcode.2) byteCodeisinterpretedbybspretedbspretedbspretedbspretedbspretspretedbspretspret

Senibina JVM: menyelam mendalam ke mesin maya JavaSenibina JVM: menyelam mendalam ke mesin maya JavaMay 14, 2025 am 12:12 AM

TheJVMisanabstractcomputingmachinecrucialforrunningJavaprogramsduetoitsplatform-independentarchitecture.Itincludes:1)ClassLoaderforloadingclasses,2)RuntimeDataAreafordatastorage,3)ExecutionEnginewithInterpreter,JITCompiler,andGarbageCollectorforbytec

JVM: Adakah JVM berkaitan dengan OS?JVM: Adakah JVM berkaitan dengan OS?May 14, 2025 am 12:11 AM

Jvmhasacloserelationshipwiththeosasittranslatesjavabytecodeintomachine-specificinstructions, managesmemory, andhandlesgarbagecollection.Thisrelationshipallowsjavatorunonvariousosenvi,

Java: Tulis sekali, jalankan di mana sahaja (wora) - menyelam mendalam ke dalam kemerdekaan platformJava: Tulis sekali, jalankan di mana sahaja (wora) - menyelam mendalam ke dalam kemerdekaan platformMay 14, 2025 am 12:05 AM

Pelaksanaan Java "Tulis Sekali, Jalankan Di Mana -mana" disusun menjadi bytecode dan dijalankan pada mesin maya Java (JVM). 1) Tulis kod Java dan menyusunnya ke dalam bytecode. 2) Bytecode berjalan pada mana -mana platform dengan JVM dipasang. 3) Gunakan antara muka asli Java (JNI) untuk mengendalikan fungsi khusus platform. Walaupun terdapat cabaran seperti konsistensi JVM dan penggunaan perpustakaan khusus platform, Wora sangat meningkatkan kecekapan pembangunan dan fleksibiliti penempatan.

Kemerdekaan Platform Java: Keserasian dengan OS yang berbezaKemerdekaan Platform Java: Keserasian dengan OS yang berbezaMay 13, 2025 am 12:11 AM

Javaachievesplatformindependencethroughthejavavirtualmachine (JVM), membenarkancodetorunondifferentoperatingsystemswithoutmodification.thejvmcompilesjavacodeintoplatform-bebastbytecode, yang mana-mana

Ciri -ciri apa yang menjadikan Java masih kuatCiri -ciri apa yang menjadikan Java masih kuatMay 13, 2025 am 12:05 AM

Javaispowerfulduetoitsplatformindantrectence, orientednature orientednature, richstandardlibrary, perfanksapabilities, andstrongSecurityfeatures.1) PlatformIndendenceAllowsApplicationStorAnanydeviceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceDeviceViceDeviceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceViceD

Ciri -ciri Java Teratas: Panduan Komprehensif untuk PemajuCiri -ciri Java Teratas: Panduan Komprehensif untuk PemajuMay 13, 2025 am 12:04 AM

Fungsi Java teratas termasuk: 1) pengaturcaraan berorientasikan objek, menyokong polimorfisme, meningkatkan fleksibiliti kod dan pemeliharaan; 2) mekanisme pengendalian pengecualian, meningkatkan keteguhan kod melalui blok percubaan-catch-finally; 3) pengumpulan sampah, memudahkan pengurusan memori; 4) generik, meningkatkan keselamatan jenis; 5) Ekspresi AMBDA dan pengaturcaraan berfungsi untuk menjadikan kod lebih ringkas dan ekspresif; 6) Perpustakaan standard yang kaya, menyediakan struktur data dan algoritma yang dioptimumkan.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Nordhold: Sistem Fusion, dijelaskan
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)