Visual Studio для создания нового интерфейса и создания нового базового модульного теста

В Visual Studio вы можете нажать SHIFT + ALT + C, чтобы создать новый файл класса. Я ищу аналогичный ярлык для нового файла интерфейса и нового файла "базового модульного теста". У меня есть Telerik JustCode, поэтому, пожалуйста, не предлагайте продукт simillar. Но если существует небольшое расширение, было бы неплохо узнать. BTW Я использую Visual Studio 2010 (С#).

Ответ 1

Для этого нет встроенных решений, но вы можете легко записывать макросы (в меню "Сервис"):

enter image description here

Вы можете переименовать их в проводнике макросов (Alt + F8)

Затем вы можете назначить ярлыки для этих макросов в "Инструменты" → "Параметры" → "Клавиатура".

EDIT Это не работает для добавления нового теста базового блока. Вы попадете в диалог выбора нового теста, даже с помощью этого метода.

Ответ 2

Вместо того, чтобы использовать макрос, я бы посоветовал вам заглянуть в Менеджер фрагментов кода. Это позволяет вам создать шаблон текста с "отверстиями" в нем. И присвойте шаблону "ключ" - короткий текст (который может быть автозаполнен). Когда ключ вводится, шаблон заменяет ключ, и отверстия могут быть легко заполнены. Кроме того, вы можете добавить к нему макроподобные функции, чтобы автоматически получить текущее имя файла или класс или дату, предварительно заполненные.

Visual studio фактически поставляется с фрагментами С# для "Test class" и "Test method".

См. Также http://msdn.microsoft.com/en-us/library/ms165393(v=vs.100).aspx

Наконец, поддержка фрагмента кода в Resharper (http://www.jetbrains.com/resharper/) намного лучше, чем в визуальной студии. Определенно стоит проверить. Настоящий рост производительности!

Ответ 3

В новой Visual Studio 2019 (в моем случае, Preview) Alt-Shift-C открывает "Add New Item" с выбранной опцией "Class" и курсором в поле имени (файла). Однако в этот момент вы можете просто переключиться с "Класса" на "Интерфейс" или любой другой доступный элемент.

Если "Базовый unit тест" отсутствует, то это может быть потому, что ваш проект не является тестовым проектом; перечисленные пункты кажутся специфическими для типа проекта.