Должны ли фиктивные объекты отправлять события? - PullRequest
0 голосов
/ 07 июня 2009

Я использую этот вид проводки для моего MVC, и я хочу проверить контроллер. До сих пор я нашел два способа: либо события отправки моего фиктивного представления, либо мой контроллер выставляют открытые методы.

Отправка событий, кажется, путь (как указано в ответе), но если мой взгляд - простой фиктивный объект, как мне отправить эти события?

Ответы [ 2 ]

1 голос
/ 07 июня 2009

Если ваш взгляд обычно отправляет события, то лучше всего, чтобы ваши фиктивные объекты тоже это делали. Поддельные объекты предназначены для имитации интерфейса, а отправляемые события являются частью этого интерфейса (хотя не всегда хорошо документированной и видимой частью). Это также означает, что вы тестируете контроллеры так же, как они будут использоваться.

Конечно, если ваше представление не отправляет события нормально, то я предполагаю, что оно обычно использует публичные методы, и вы должны сделать то же самое.

0 голосов
/ 07 июня 2009

Поскольку вы не пометили вопрос языком, я не знаю, сработает ли это, но рассматривали ли вы возможность использования отражения и использования методов защищенного / частного контроллера таким образом? На мой взгляд, вы должны проверить, что метод работает правильно, вы можете сделать это, вызвав его через рефлексию, если ваш язык его поддерживает. Вам понадобятся другие тесты, чтобы убедиться, что ваши обработчики событий настроены правильно, или если у вас есть код, который вы написали, который отправляет события, вам нужно проверить, что события отправляются правильно.

...