Как мне издеваться над Ignition.start () - PullRequest
1 голос
/ 09 мая 2019

По разным причинам моя среда модульного тестирования не будет иметь доступа к среде, необходимой для запуска зажигания. Мне не нужно зажигать, чтобы начать тестирование, и я бы хотел, чтобы код просто игнорировал вызов Ignition.start (). Как мне это сделать?

Я пытался смоделировать зажигание, но когда я пытаюсь смоделировать метод start (), он выдает ошибку.

when(ignitionMock.start())

Это приводит к следующей ошибке:

org.mockito.exceptions.misusing.MissingMethodInvocationException: Когда () требуется аргумент, который должен быть «вызовом метода для макета». Например: когда (mock.getArticles ()) thenReturn (статьи);.

Кроме того, эта ошибка может отображаться, потому что: 1. Вы заглушаете любой из методов: final / private / equals () / hashCode (). Эти методы не могут быть проверены / проверены. Методы насмешек, объявленные в закрытых родительских классах, не поддерживаются. 2. внутри when () вы вызываете не метод на макете, а на каком-то другом объекте.

1 Ответ

1 голос
/ 09 мая 2019

Вы можете использовать doNothing():

doNothing().when(ignitionMock).start();
...