如何在 Spring Boot 中使用 mockito 模擬這兩個 loc。
JsonNode jsonNode = objectMapper.readValue(httpResponseObject.getResponseBody(), JsonNode.class);
String token = jsonNode.get("token").asText();
我已經使用下面的模擬模擬了第一個 loc,但不知道如何模擬第二個 loc。
String jsonString = TestingUtil.getResponse();
JsonNode jsonNode = objectMapper.readTree(jsonString);
Mockito.when(objectMapper.readValue(Mockito.anyString(), Mockito.any(Class.class))).thenReturn(jsonNode);
但這里 jsonNode 正在回傳空指標例外
uj5u.com熱心網友回復:
這是 mocking 的詳細說明objectMapper。
https://www.baeldung.com/mockito-mock-jackson-read-value
實際上在單元測驗方面,objectMapper 和任何要測驗的類沒有區別。只需添加要模擬的依賴項,為其指定規則(例如 when->then),斷言它。
- 編輯 -
添加 JsonNode 作為模擬物件。
JsonNode mockNode = mock(JsonNode.class);
JsonNode innerMockNode = mock(JsonNode.class);
Mockito.when(objectMapper.readValue(Mockito.anyString(), Mockito.any(Class.class))).thenReturn(mockNode);
Mockito.when(mockNode.get("token")).thenReturn(innerMockNode);
Mockito.when(innerMockNode.asText()).thenReturn("myToken");
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/454185.html
上一篇:為什么我們需要在SpringDataJPA中使用@Transactional注釋Service類
下一篇:使用自定義訊息回傳自定義ResponseEntity<>(HttpStatus.BAD_REQUEST)的最簡單方法?Java春季啟動
