Как настроить макет файла, чтобы поместить [ClassInitialize] и [ClassCleanup] в верхнюю часть файла с помощью Resharper 9?

Как вы установите макет файла, чтобы поставить MsTest [ClassInitialize] а также [ClassCleanup] методы в верхней части файла с помощью Resharper 9?

При настройке по умолчанию для R# методы просто сортируются по альфа-каналам вместе с другими методами тестирования.

Я ценю, что могу изменить "Все остальные участники" из сортировки по имени, чтобы отсортировать сначала по статическому, а затем по имени, но это похоже на быстрый взлом

1 ответ

Решение

Вы можете редактировать правила размещения файлов, которые ReSharper использует для переупорядочения содержимого файлов путем очистки кода, перейдя в ReSharper → Параметры → Редактирование кода → C# → Расположение файлов.

Полная информация доступна в веб-справке, но идея состоит в том, чтобы создать шаблон, очень похожий на шаблон по умолчанию "NUnit Test Fixtures", но для MSTest. На самом деле, это хорошая идея для шаблона по умолчанию, поэтому я добавил предложение, которое вы можете отслеживать или голосовать: RSRP-446275

По сути, вы хотите сделать то, что делает правило NUnit Test Fixtures по умолчанию. Создайте новый "шаблон типа" и добавьте его между "NUnit Test Fixtures" и "Default Pattern". Дважды щелкните, чтобы редактировать шаблон, и переключитесь в режим просмотра ограничений, щелкнув по шестерне в правом верхнем углу. Здесь вы можете сказать, что он должен быть в своем роде "Класс" и "Имеет атрибут" Microsoft.VisualStudio.TestTools.UnitTesting.TestClassAttribute,

Вернитесь в представление "Составление (правила)" и добавьте "Запись" из панели инструментов. Дайте ему имя, например "Методы настройки / разрыва", и дважды щелкните по нему. Это должно быть установлено так же, как в NUnit - And (Kind=Method, Or (Имеет атрибут =Microsoft...ClassInitializeAttribute, Имеет атрибут =Microsoft...ClassCleanup)).

Шаблон NUnit определяет другую пару записей - пустую для "Все остальные члены" и одну для "Тестовых методов", которая является kind=method и имеет attribute=Test. Нечто подобное можно сделать для mutest's TestMethod приписывать.

Другие вопросы по тегам