MsTest проект: Как мне включить другую библиотеку UnitTest DLL и запустить все ее тесты тоже?

Вопрос или проблема

TLDR: У меня есть файл DLL для модульных тестов из другого решения. Я хочу сослаться на этот DLL и запустить его тесты В ДОПОЛНЕНИЕ к тестам, уже существующим в текущем проекте/решении.

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

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

Спасибо за вашу помощь!

Ответ или решение

Чтобы интегрировать и выполнить тесты из другого DLL файла с юнит-тестами в рамках вашего проекта на MS Test, вы можете выполнить следующие шаги. Данный подход позволяет включить тесты из общего решения совместно с тестами в текущем проекте. А теперь разберём процесс более подробно.

1. Добавление ссылки на DLL с тестами

Первым делом необходимо добавить ссылку на DLL файл, содержащий ваши юнит-тесты. Для этого выполните следующие шаги:

  • Откройте ваш проект в Visual Studio.
  • Найдите проект, в который вы хотите включить тесты.
  • Щелкните правой кнопкой мыши на проекте и выберите "Добавить" -> "Ссылка".
  • В открывшемся окне выберите "Обозреватель" и укажите путь к DLL файлу вашего общего решения с юнит-тестами.
  • Убедитесь, что вы выбрали DLL и добавили ее в проект.

2. Импортирование пространств имён

После успешного добавления ссылки, вам нужно будет убедиться, что все необходимые пространства имён из DLL доступны. Откройте ваш класс тестов, который будет исполнять тесты, и добавьте необходимые директивы using в начале файла:

using SharedLibraryNamespace; // замените на реальное пространство имён из вашего DLL

3. Обнаружение тестов

MS Test автоматически обнаруживает тесты, если они имеют правильные атрибуты. Убедитесь, что ваши тесты в DLL помечены так же, как в вашем текущем проекте:

[TestMethod]
public void YourTestMethodInSharedDLL()
{
    // Ваш тест-код здесь
}

4. Запуск всех тестов

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

  • Откройте окно "Тесты" в Visual Studio (Выберите "Тест" -> "Параметры теста").
  • Нажмите "Запустить все тесты" или используйте соответствующую комбинацию клавиш (по умолчанию это Ctrl + R, A).

Visual Studio обнаружит и выполнит как ваши локальные тесты, так и тесты, импортированные из внешней DLL.

5. Проверка результатов

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

Оптимизация процесса

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

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...