Я довольно новичок в модульном тестировании. У меня есть сайт, построенный в 3-х уровневой архитектуре, UI -> BLL -> DAL. И я использовал модель провайдера asp.net, поэтому, внеся изменения в файл web.config, я могу переключиться на DAL dll для нацеливания на разные источники данных, чтобы завершить DAL, пишется с Entity Framework.
Теперь мой вопрос: как мне выполнить модульное тестирование моего BLL? Я использую NUnit.
Если запустить / отладить мой сайт, asp.net/IIS загружает все и получает правильную конфигурацию из web.config, так что все работает, потому что точка входа из IIS. Теперь, если я использую графический интерфейс NUnit для тестирования и скажу, что у меня есть тестовый проект «MySite.Test.dll», в котором есть контрольные примеры для моего BLL, как среда тестирования получает правильную конфигурацию для успешного выполнения всего теста. Для загрузки правильного провайдера необходима информация в web.config!
Теперь в моем DAL есть файл App.config, созданный EntityFramework, и в нем есть только строка подключения. Должен ли я поместить все связанные с провайдером конфигурации в этот app.config? Или я упускаю какую-то общую картину о том, как правильно это сделать?
Это должно быть обычным делом, я думаю, что люди должны делать постоянно. Может ли кто-нибудь дать некоторые подробности о том, как мне выполнить модульное тестирование моей библиотеки.
Спасибо,
Ray.
Изменить: После прочтения первых 2 ответов, я думаю, что я должен исправить свое описание с интеграционным тестированием. По сути, вместо IIS в качестве точки входа используйте инструменты GUI, такие как NUnit, для запуска и тестирования моего кода, поэтому NUnit -> BLL -> DAL. Как люди на самом деле это настраивают?
Спасибо,
Ray.