Я подключаюсь к простой, хотя и своеобразной, внешней службе.
Я полагаю, что мои модульные тесты не должны зависеть от доступности или реализации этой внешней службы, поэтому я собираюсь сделать это.
Мне нужно издеваться, чтобы принимать и возвращать реалистичные сообщения и ответы - иначе мои тесты не будут отражать реальное положение дел. Например, он должен выдавать правильные ошибки - и есть по крайней мере 7 различных способов, которыми он может потерпеть неудачу (между вами и мной это не очень хорошо продуманный внешний сервис). Поэтому, как минимум, я должен иметь хэш пар сообщение / ответ.
Таким образом, вместо уменьшения непредвиденных обстоятельств, насмешка вновь ввела его в другое место. На самом деле, как говорится, теперь у меня есть две проблемы: я должен быть уверен, что в моем хэше есть точное представление о том, как ведет себя внешняя служба. Но, безусловно, каноническим источником ответа объекта X на сообщение m является сам X. Все остальное рискованно и грязно.
Я сделал неправильный поворот? Как я могу устранить эту кажущуюся круглость?
РЕДАКТИРОВАТЬ Я пояснил, в чем, на мой взгляд, проблема в свете полезных комментариев Правосудия.