Rumah > Java > javaTutorial > teks badan

Berikut ialah beberapa pilihan tajuk untuk artikel anda, menekankan format soalan: Pendek & Punchy: * @Mock, @MockBean, atau Mockito.mock(): Strategi Mengejek Mana yang Sesuai untuk Anda? * Ujian But Spring

DDD
Lepaskan: 2024-10-26 17:21:03
asal
241 orang telah melayarinya

Here are a few title options for your article, emphasizing the question format:

Short & Punchy:

* @Mock, @MockBean, or Mockito.mock(): Which Mocking Strategy is Right for You?
* Spring Boot Testing: When to Use @Mock, @MockBean, and Mockito.mock()?
* Mo

Memahami Perbezaan antara @Mock, @MockBean dan Mockito.mock()

Apabila membangunkan ujian dan kebergantungan mengejek, adalah penting untuk fahami perbezaan antara tiga pendekatan yang biasa digunakan: @MockBean, @Mock dan Mockito.mock().

Mockito vs. Spring Boot @MockBean

Mockito (klasik/plain):

import org.mockito.Mock;
...
@Mock<br>MyService myservice;<br>

import org.mockito.Mockito;
...
MyService myservice = Mockito.mock(MyService.class);

Mockito menggunakan anotasi dan menyediakan cara langsung untuk mengejek kelas atau antara muka.

Spring Boot @MockBean:

import org.springframework. boot.test.mock.mockito.MockBean;<br>...<br>@MockBean<br>MyService myservice;<br>

Spring Boot @MockBean ialah anotasi yang digunakan secara khusus dalam rangka kerja Spring Boot.

Perbezaan:

  • Mockito membolehkan anda mengejek kebergantungan untuk ujian unit, manakala @MockBean menambah ejekan pada Spring ApplicationContext.
  • @MockBean menggantikan atau menambah olok-olok pada konteks berdasarkan definisi kacang sedia ada, manakala Mockito tidak berinteraksi dengan Spring.

Bila Gunakan:

  • Gunakan Mockito apabila menguji komponen secara berasingan daripada bekas Spring.
  • Gunakan @MockBean apabila ujian memerlukan interaksi dengan bekas Spring dan mengejek kacang tertentu di dalamnya.

Mockito.mock() lwn. @Mock @MockBean

Kedua-dua @Mock (dari Mockito) dan @MockBean (dari Spring Boot) digunakan untuk mengejek, tetapi ada yang halus perbezaan:

  • @Mock: Anotasi Mockito digunakan untuk mengejek dalam ujian unit.
  • @MockBean: Anotasi Spring Boot digunakan untuk mengejek dalam Spring ApplicationContext.

Secara fungsional, kedua-duanya mencapai hasil yang sama, jadi keputusan untuk digunakan bergantung pada keperluan ujian khusus.

Penggunaan Praktikal

Ujian Unit tanpa Konteks Spring:

@Mock<br>MyService myservice;<br>

Ujian Unit dengan Konteks Musim Bunga dan Penggantian Kacang:

@MockBean<br>MyService myservice;<br>

Menambahkan Olok-olok pada Ujian WebMvc Musim Bunga:

@WebMvcTest(FooController.class)
@MockBean
FooService fooServiceMock;<
gt;

Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk untuk artikel anda, menekankan format soalan: Pendek & Punchy: * @Mock, @MockBean, atau Mockito.mock(): Strategi Mengejek Mana yang Sesuai untuk Anda? * Ujian But Spring. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!