ত্রুটির বিশদ:
org.mockito.exceptions.misusing.WrongTypeOfReturnValue:
Boolean cannot be returned by updateItemAttributesByJuId()
updateItemAttributesByJuId() should return ResultRich
This exception might occur in wrongly written multi-threaded tests.
Please refer to Mockito FAQ on limitations of concurrency testing.
আমার কোড:
@InjectMocks
protected ItemArrangeManager arrangeManagerSpy = spy(new ItemArrangeManagerImpl());
@Mock
protected JuItemWriteService juItemWriteService;
when(arrangeManagerSpy
.updateItemAttributes(mapCaptor.capture(), eq(juId), eq(itemTO.getSellerId())))
.thenReturn(false);
যেহেতু আপনি দেখতে পারেন, আমি আহ্বান করছি when
উপর updateItemAttributes
(যা ফেরত একটি করে boolean
না) updateItemAttributesByJuId
।
- মকিতো কেন একটি
boolean
থেকে ফেরত দেওয়ার চেষ্টা করছেupdateItemAttributesByJuId
? - এটি কীভাবে সংশোধন করা যায়?
@Repository
সাথে কিছু স্প্রিং ডিএও পদ্ধতি পরীক্ষা করার সময় আমারও এই সমস্যা ছিল । যদি আমি এটি করিwhen(someDao.someMethod()).thenReturn(List<xxx>)
, আমি এই র্রংটাইপআফ রিটারনভ্যালু ব্যতিক্রমটি পেয়েছি। ডিবাগের মাধ্যমে, আমি দেখতে পাচ্ছি যেsomeMethod
পদ্ধতিটি আসলে উপরের বিবৃতিতে ডাকা হয়েছিল এবংnull
আশেপাশের পরামর্শটি ট্রিগার করে এবং একটি ফেরত দেয় তবে মকিতো একটি আশা করেList<xxx>
।