Обход «один исполняемый файл на проект» в Visual C # для многих небольших тестовых программ - PullRequest
0 голосов
/ 17 мая 2010

При работе с Visual Studio в целом (или с Visual C # Express в моем конкретном случае) создается впечатление, что каждый проект может быть настроен на создание только одного вывода - например, один исполняемый файл или библиотека.

Я работаю над проектом, который состоит из общей библиотеки и нескольких приложений, и у меня уже есть один проект в моем решении для каждого из них. Тем не менее, во время разработки я считаю полезным писать небольшие примеры программ, которые могут запускать одну маленькую подсистему изолированно (на уровне, который не входит в модульные тесты).

Есть ли хороший способ справиться с этим в Visual Studio? Я хотел бы избежать добавления нескольких десятков отдельных проектов в мое решение для каждой небольшой тестовой программы, которую я пишу, особенно когда эти программы обычно содержат менее 100 строк кода. Я надеюсь найти что-то, что позволит мне продолжать работать в Visual Studio и использовать его систему сборки (а не переходить на что-то вроде NAnt).

Я мог бы предвидеть, что ответ будет примерно таким:

  • Способ настройки в Visual Studio, который я еще не нашел
  • GUI, такой как графический бегунок NUnit, который ищет в сборке классы с определенными функциями Main (), которые вы можете выбрать и запустить
  • Инструмент командной строки, позволяющий указать сборку и класс с функцией Main для запуска

Ответы [ 3 ]

2 голосов
/ 17 мая 2010

Вместо того, чтобы писать небольшие тестовые программы, подумайте о написании модульных тестов. Это приводит вас непосредственно к Test Driven Development .

У вас может быть столько юнит-тестов в тестовом проекте, сколько вам нужно.

1 голос
/ 15 сентября 2012

Я использую LinqPad в такой ситуации. Я могу связать приложение exe / dll и затем запустить тестовый код, который ссылается на компоненты проекта / решения.

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

0 голосов
/ 17 мая 2010

Один проект - один выход. Просто. Обойти это невозможно.

Используйте модульные тесты для компиляции фрагмента.

...