java.lang.IllegalStateException: несовместимый тип возвращаемого значения - PullRequest
18 голосов
/ 11 марта 2011

Я использую EasyMock для создания ложных классов в тестовых случаях.

expect(entity.getType()).andReturn("string");

Тип относится к типу данных String.В моей среде разработки это работает нормально.Но если я перехожу на свой сервер и беру сборку, то происходит сбой со следующей ошибкой:

java.lang.IllegalStateException: incompatible return value type

Я не знаю, почему происходит сбой на сервере и выполняется на моем компьютере разработчика.

Разработка EasyMock версия: 2.5.2

Ответы [ 4 ]

14 голосов
/ 11 августа 2011

У меня была такая же проблема.

У меня был частичный макет в EasyMock, но я забыл вызвать addMockedMethod для метода, для которого я хотел установить ожидание.

Сообщение об ошибке было таким же, как и выше, я бы сказал, что оно несколько вводит в заблуждение.

8 голосов
/ 28 марта 2014

В моем случае это был метод final, для которого я вызвал expect. Таким образом, EasyMock не смог смоделировать метод и, следовательно, не записал вызов метода.

6 голосов
/ 30 августа 2011

Убедитесь, что ваш entity объект не является простым POJO (например, new Entity()), и он был создан с помощью createMock() методов EasyMock.

3 голосов
/ 03 мая 2012

Мне нужно было не забыть вызвать сброс (...) для него после его однократного использования, или я (странно) получил это сообщение об ошибке, ожидая вызова во второй раз.

...