powered by simpleCommunicator - 2.0.57     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
5 сообщений из 5, страница 1 из 1
Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
    #38150276
Воланчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет
По юнит-тестингу книги есть. А вот по мокам не нашел.

Еще вопросы:

1 И что скажет по поводу ninject ? Порылся, вроде выходит, что очень наворочен, чуть ли не лучше всех. Что скажете ?

2 В стандартной поставке VS2012 есть что-то для создани моков ?
...
Рейтинг: 0 / 0
Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
    #38150313
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Воланчик,

Тема про mock'и на самом деле слишком мала, чтобы потянуть на книжку. Старина Фаулер подытожил тему в одной статье . С тех пор идеалогически ничего не изменилось.

Для .Net самый популярный был пожалуй moq, но сейчас бы я посоветовал NSubstitute.

1. Ninject вы как mock собираетесь использовать? Это же DI-container.
2. Не приходилось слышать.

PS. Сам отказался от моков полностью. Тесты можно отлично писать и без них.
...
Рейтинг: 0 / 0
Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
    #38150337
Воланчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SolYUtorВоланчик,

Тема про mock'и на самом деле слишком мала, чтобы потянуть на книжку. Старина Фаулер подытожил тему в одной статье . С тех пор идеалогически ничего не изменилось.

Для .Net самый популярный был пожалуй moq, но сейчас бы я посоветовал NSubstitute.

1. Ninject вы как mock собираетесь использовать? Это же DI-container.
2. Не приходилось слышать.

PS. Сам отказался от моков полностью. Тесты можно отлично писать и без них.

Вы имеете ввиду, что каждый раз придется писать свой класс для реализации тестируемого интерфейса ? Вот как раз поэтому то я и хочу прийти к мокам - слишком уж муторно с классами. Там же еще придется каждый раз методы переписывать. Чтобы он для одного теста вернул True, а для другого False - и как тут быть ? Если только создавать отдельный параметр в методе, и тесты будут туда передавать 1,2,3 и получать нужные ответы - но этот параметр же совершенно лишний в реальном приложении будет.

Что вы подразумеваете под "Тесты можно отлично писать и без них" ? Как оттестировать интерфейс, когда один и тот же метод, в разных тестах должен работать совершенно по разному ?
Если только у Вас там несвой собственный велосипед.

Ninject разве не умеет Моки создавать ? Ну я видимо плохо ковырялся пока искал информацию. Мне показалось, что видел где-то, что он и это умеет, либо он входит в какой-то фреймворк... в общем ладно, фиг с ним.

PS. Если на то пошло, то какой DI посоветуете ? :) Хотя сам даже не знаю по каким критериям их нужно оценивать...
...
Рейтинг: 0 / 0
Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
    #38150353
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВоланчикВы имеете ввиду, что каждый раз придется писать свой класс для реализации тестируемого интерфейса ? Вот как раз поэтому то я и хочу прийти к мокам - слишком уж муторно с классами. Там же еще придется каждый раз методы переписывать. Чтобы он для одного теста вернул True, а для другого False - и как тут быть ? Если только создавать отдельный параметр в методе, и тесты будут туда передавать 1,2,3 и получать нужные ответы - но этот параметр же совершенно лишний в реальном приложении будет.
Я тестирую с реальными объектами, можно скзать интеграционное тестирование. Получается быстрее и проще, хотя требует перестройки подходов к проектированию.
Своё отношение к mock'ам подробнее излагал тут , тут , и тут .

Есть такое понятие, как Automock. Это когда скрещивают DI-контейнер и Mock-библиотеку. Т.е. Контейнер по первому требованию создаёт Mock объект и подсовывает его в другой объект. Возможно, такой плагин был написан и для Ninject'а.

Контейнер нужно выбирать по принципу что больше нравится, и с чем проще работать.
Из DI контейнеров (пробовал Spring, Castle Windsor, Autofac) больше всего нравится Windsor. Много точек расширения, и то API которое мне нравится.
...
Рейтинг: 0 / 0
Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
    #38150377
Воланчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SolYUtor,

Хм.
Т.е. если реальный класс работает с БД и что-то там меняет, вы его и тестируете с реальным доступом к БД ?
Сдается мне, что продумывание алгоритма "как оттестить вставки в таблицы, а потом откатились все что понавставлялось от триггеров, после теста, и ниче не сломалось" будет посложнее чем банальный мок :)
Хотя можно конечно потестить на тестовой БД, но и там же придется перед каждый запуском каждого теста готовить нужные данные - как я писал выше, чтобы на один тест выдалось False а на другой True - если, к примеру, идет обращение к очень сложному запросу, не понятно сколько все это будет выполнятся по времени - а таких тестов может нужно штук 10... Мдя.

В принципе я то вообще в этом плане еще хуже, так, что не мне судить :)
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Посоветуйте книги по Мокам (Mock). И что думаете насчет NINJECT в этом плане ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]