Ложный вызов статического метода служебного класса - PullRequest
0 голосов
/ 20 апреля 2019

Мне нужно написать модульный тест для метода processNotification. Но этот метод внутренне вызывает JsonUtility.getNotificationDTOFromMessage.

Мне нужно, чтобы возвращаемое значение было null, когда это вызывается. Как мы можем достичь этого, используя Mockito?

Я не могу вносить изменения в код, поскольку он не принадлежит мне.

@Override
public void processNotification(String message) throws IOException {
    logger.info(" Processing the notifications");
    NotificationDTO notification = 
    JsonUtility.getNotificationDTOFromMessage(message);
    if (null == notification) {

Ответы [ 2 ]

0 голосов
/ 21 апреля 2019

Вы не можете смоделировать статический метод, используя Mockito. Попробуйте использовать PowerMockito, если вам нужно смоделировать статические методы

Пример: PowerMockito.mockStatic (JsonUtility.class);

0 голосов
/ 21 апреля 2019

Вы не можете смоделировать статические методы, используя mockito. Но вы можете манипулировать своими входными данными, если это возможно, так что они перейдут в статический метод и вернут желаемое значение. Вы можете передать message = null из вашего тестового метода, если это возможно . Так что вы можете проверить свой метод.

...