Генерация только тестов из существующих моделей / контроллеров - PullRequest
16 голосов
/ 06 декабря 2010

У меня есть приложение Rails3, основанное на чужой работе.По какой-то причине они решили не поставлять тесты вместе с приложением, что, на мой взгляд, разочаровывает.

Что я хочу сделать, это подготовить тесты для всех существующих контроллеров и моделей, чтобы я мог получитьНачните создавать тесты самостоятельно в test :: unit.Я не хочу воссоздавать модели или контроллеры, просто создаю тесты.

Я новичок в Rails и уже искал команду rake, которая могла бы это сделать, но пока все безуспешно.Любой совет / направление наиболее ценится.

Ответы [ 3 ]

20 голосов
/ 23 августа 2011

Я знаю, что он немного староват, но вы можете сделать это:

rails g scaffold Post -s

-s позволяет пропустить уже созданные файлы. Кроме того, если вы не используете флаг, он просто спросит вас, хотите ли вы переопределить файл, так что не беспокойтесь.

15 голосов
/ 22 февраля 2013

Чтобы сгенерировать только связанные тестовые файлы для существующего приложения на Rails 3, я использую «генерировать ресурс», но пропускаю все, что мне не нужно:

rails g resource Post --skip --no-resource-route --no-migration --no-helper --no-assets

Другие опции можно найти с помощью rails generate resource --help

-s, [--skip]     # Skip files that already exist
--resource-route            # Indicates when to generate resource route
[--helper]                # Indicates when to generate helper
[--assets]                # Indicates when to generate assets
[--migration]            # Indicates when to generate migration

Почему бы не использовать generate scaffold? Потому что это может генерировать представления, которые я не использую.

0 голосов
/ 08 декабря 2010

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

Этот ответ устарел.Современные версии рельсов позволяют создавать только отсутствующие файлы с опцией пропуска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...