Rumah > Java > javaTutorial > Bagaimana untuk menguji unit fungsi Java dengan Mockito?

Bagaimana untuk menguji unit fungsi Java dengan Mockito?

王林
Lepaskan: 2024-04-27 15:36:01
asal
774 orang telah melayarinya

Langkah untuk menguji fungsi Java menggunakan Mockito: Tambahkan kebergantungan Mockito. Cipta objek olok-olok dan tetapkan tingkah laku olok-olok. Panggil fungsi untuk diuji. Tegaskan kelakuan yang dijangkakan bagi sesuatu fungsi. Gunakan verify() untuk mengesahkan interaksi simulasi.

Bagaimana untuk menguji unit fungsi Java dengan Mockito?

Cara menguji unit fungsi Java menggunakan Mockito

Apabila bercakap tentang ujian unit di Java, Mockito ialah rangka kerja mengejek yang popular yang membolehkan anda mencipta dua ujian untuk mengejek kebergantungan luaran. Menguji fungsi Java adalah sangat mudah dengan Mockito.

Dependencies

Sebelum anda bermula, pastikan anda memasukkan dependensi Mockito dalam projek anda:

<dependency>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-core</artifactId>
  <version>4.6.1</version>
  <scope>test</scope>
</dependency>
Salin selepas log masuk

Buat kelas ujian

Untuk mencipta kelas ujian fungsi, buat kelas >MockitoTcodeCase baharu dan lanjutkan kelas, seperti yang ditunjukkan di bawah: MockitoTestCase 类,如下所示:

import org.junit.Before;
import org.junit.Test;
import org.mockito.Mockito;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;

public class FunctionTest extends MockitoTestCase {
  // 定义要测试的函数
  private Function<Integer, Integer> function;
  
  @Before
  public void setUp() {
    // 创建函数的模拟
    function = Mockito.mock(Function.class);
  }
  
  // 测试函数的行为
  @Test
  public void testFunction() {
    // 设置函数的模拟行为
    Mockito.when(function.apply(10)).thenReturn(20);
    
    // 调用要测试的函数
    int result = function.apply(10);
    
    // 断言函数的预期行为
    assertEquals(20, result);
    verify(function, times(1)).apply(10);
  }
}
Salin selepas log masuk

实战案例

让我们考虑一个简单的函数 addTen()

public class MathFunctions {
  public int addTen(int number) {
    return number + 10;
  }
}
Salin selepas log masuk

Kes praktikal

Mari kita pertimbangkan fungsi mudah addTen() yang menerima nombor dan mengembalikan hasil penambahan 10 .

import org.junit.Before;
import org.junit.Test;
import org.mockito.Mockito;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;

public class MathFunctionsTest extends MockitoTestCase {
  private MathFunctions mathFunctions;
  
  @Before
  public void setUp() {
    mathFunctions = Mockito.mock(MathFunctions.class);
  }
  
  @Test
  public void testAddTen() {
    Mockito.when(mathFunctions.addTen(10)).thenReturn(20);
    
    int result = mathFunctions.addTen(10);
    
    assertEquals(20, result);
    verify(mathFunctions, times(1)).addTen(10);
  }
}
Salin selepas log masuk

Menguji Kes Praktikal

Untuk menguji fungsi ini menggunakan Mockito, buat kelas ujian seperti yang ditunjukkan di bawah:

rrreee

🎜Kesimpulan🎜🎜🎜Menggunakan Mockito untuk ujian unit fungsi Java adalah sangat mudah. Anda boleh menguji ketepatan fungsi dengan mudah dengan membuat olok-olok, mentakrifkan gelagat olok-olok itu dan menegaskan gelagat yang diharapkan fungsi itu. 🎜

Atas ialah kandungan terperinci Bagaimana untuk menguji unit fungsi Java dengan Mockito?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan