Кто-нибудь знает инструмент, который будет автоматически генерировать заглушки модульного теста?

Я пишу приложение winforms, и в конечном итоге я хотел бы написать модульный тест для этого приложения из слоев DAL, Biz Objects и т. д.

Кто-нибудь знает БЕСПЛАТНЫЙ инструмент, который может получить путь к сборке, а затем вывести заглушки модульных тестов с соответствующими подписями для сборки.

Любые настраиваемые параметры, такие как «только общедоступные интерфейсы», «выбор тестовой среды», «выбор языка», будут плюсом.

По крайней мере, мне понадобится этот инструмент для запуска vb.net против nunit.

Спасибо.

Сет


person Seth Spearman    schedule 13.08.2009    source источник


Ответы (4)


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

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

person mezoid    schedule 13.08.2009
comment
mezoid, Спасибо за ответ. Я согласен с тем, что идеальной ситуацией была бы разработка набора тестов во время написания кода. (Я также хочу мира во всем мире и прекращения голода во всем мире). (Просто шучу... без сарказма.) В моем случае я слишком далеко продвинулся, чтобы сделать это, поэтому я хотел бы постепенно начать внедрять модульное тестирование моих DLL побитно. То, что вы говорите, идеально. То, что я говорю, лучше, чем ничего. Тем не менее... Думаю, я мог бы просто написать их один за другим, а не генерировать. Но затушить их кажется мне полезным. - person Seth Spearman; 13.08.2009

Взгляните на Pex от Microsoft Research.

person Mark Seemann    schedule 13.08.2009
comment
Но: 1) Pex генерирует заглушки MSTest по умолчанию, и Сет запросил NUnit. Для этого вам потребуется дополнительная настройка (руководство: blog.benhall.me.uk/2008/08/). 2) Является ли Pex бесплатным? Его использование ограничено: Academic Release (MSR-LA — только некоммерческая версия) или DevLabs Pre-Release (лицензия Microsoft Pre-Release Software — для оценки и тестирования программного обеспечения). - person The Chairman; 13.08.2009
comment
Вот сообщение о том, что вы можете использовать Pex в коммерческих целях: coolthingoftheday.blogspot.com/2009/01/ - person Maciej; 13.08.2009
comment
РЕДАКТИРОВАТЬ: ... разрешено только тем, у кого есть Visual Studio 2008/2010 Team Dev или Team Test - person Maciej; 13.08.2009

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

person Maciej    schedule 13.08.2009

Существует инструмент под названием Pex, который не только делает заглушки, но также заполняет тесты для вас. Также есть видео онлайн.

изменить: Марк Зееманн опередил меня! Надеюсь, ссылки по-прежнему полезны.

person redtuna    schedule 13.08.2009