Rumah  >  Artikel  >  Java  >  Bagaimana Kaedah Mock Kembali ke Argumen Input Gema dalam Mockito?

Bagaimana Kaedah Mock Kembali ke Argumen Input Gema dalam Mockito?

Linda Hamilton
Linda Hamiltonasal
2024-10-24 03:07:01525semak imbas

How to Mock Method Returns to Echo Input Arguments in Mockito?

Pemulangan Kaedah Mengejek: Menggemakan Argumen Input

Apabila menguji perisian, kaedah mengejek mengembalikan hujah yang dihantar kepada mereka. Tingkah laku ini amat berguna apabila mengesahkan interaksi atau menguji aliran data melalui sistem.

Untuk Mockito versi 1.9.5 dan ke atas, fungsi ini boleh dicapai secara ringkas menggunakan ungkapan lambda:

when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);

Dalam kes ini, parameter i mewakili contoh InvocationOnMock, yang menyediakan akses kepada hujah yang dihantar kepada kaedah yang dipermainkan.

Untuk versi Mockito yang lebih awal, Jawapan tersuai diperlukan:

<code class="java">when(mock.myFunction(anyString())).thenAnswer(new Answer<String>() {
  @Override
  public String answer(InvocationOnMock invocation) throws Throwable {
    Object[] args = invocation.getArguments();
    return (String) args[0];
  }
});</code>

Menggunakan pendekatan ini, olok-olok akan mengembalikan String yang sama yang telah dihantar ke myFunction().

Atas ialah kandungan terperinci Bagaimana Kaedah Mock Kembali ke Argumen Input Gema dalam Mockito?. 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