Rumah > Java > javaTutorial > Bagaimana untuk mengejek Respons Tidak Tentu dalam ExecutorCompletionService dengan Mockito?

Bagaimana untuk mengejek Respons Tidak Tentu dalam ExecutorCompletionService dengan Mockito?

Susan Sarandon
Lepaskan: 2024-11-01 02:46:28
asal
473 orang telah melayarinya

How to Mock Nondeterministic Responses in ExecutorCompletionService with Mockito?

Respons Nondeterministic Mengejek dalam ExecutorCompletionService dengan Mockito

Menguji kelakuan ExecutorCompletionService apabila tugas mengembalikan nilai nondeterministic boleh mencabar. Walau bagaimanapun, Mockito menyediakan penyelesaian untuk mensimulasikan senario sedemikian.

Dalam situasi ini, anda boleh menggunakan kaedah thenReturn Mockito untuk menentukan berbilang nilai pulangan bagi kaedah stubbed. Ini membolehkan anda mengawal susunan nilai yang dikembalikan, memastikan hasil kekal konsisten tanpa mengira susunan pelaksanaan.

Untuk mencapai ini, tentukan sahaja panggilan kaedah stub diikuti dengan senarai nilai yang akan dikembalikan mengikut tertib. Contohnya:

when(completionService.take().get()).thenReturn(value1, value2, value3);
Salin selepas log masuk

Dalam contoh ini, nilai1 akan dikembalikan pada kali pertama take() dipanggil, nilai2 akan dikembalikan kali kedua dan seterusnya. Setelah semua nilai telah dikembalikan, nilai3 akan dikembalikan berulang kali untuk panggilan berikutnya.

Dengan menggunakan teknik ini, anda boleh menguji kelakuan kod anda apabila berurusan dengan hasil tugasan yang tidak ditentukan, memastikan hasil yang diingini dicapai tanpa mengira daripada susunan tugasan diselesaikan.

Atas ialah kandungan terperinci Bagaimana untuk mengejek Respons Tidak Tentu dalam ExecutorCompletionService dengan Mockito?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan