我只是實現JUnit測試的初學者。我有一個測試用例,如下所示。我已經嘗試了when ... thenreturn +驗證方法。使用Mockito/JUnit-Database操作單元測試Java應用程序
@RunWith(MockitoJUnitRunner.class)
public class CategoryControllerTest {
@InjectMocks
CategoryController categeoryCntrlr;
@Mock
private CategoryService catSvc;
//private CategoryController catCntrl;
@Test
public void insertCategoryTest(){
Category cat=new Category();
cat.setStrCatName("Vehicle");
String str = categeoryCntrlr.insertCategory(cat);
System.out.println(str);
assertEquals("failure",str);
}
}
我的控制器實際返回字符串'成功',但我上面的測試用例總是說str的值爲空。
當我使用when ... thenreturn()並驗證時,它實際上並未測試我的存儲庫方法,即使我將該返回值更改爲測試用例正在傳遞的其他值。我知道有行爲和測試。我們可以一起解決兩個問題嗎?我可以得到一些初學者教程(我看到了計算器的例子,並找到測試方法,但沒有插入/更新數據庫)?我無法理解Mockito的參考文件,它如何進行實際測試。任何人都可以幫助我嗎?
我做測試我的控制器,嘲笑服務和jparepository。我想測試它插入並返回成功。我用'失敗'測試了上面的內容,並且通過了。測試發生在我給的任何東西然後返回它正在測試它,而不是實際的實現。 – Shamseer
什麼是實際方法返回並不重要,重要的是什麼時候..什麼時候返回的方法。 – Shamseer
我可能會有錯誤的理解。但那正是我得到的測試結果。 – Shamseer