У меня есть проект веб-сайта ASP.net(.net 3.5). В настоящее время все файлы кода без кода (включая материал Linq2Sql, контексты данных, бизнес-логику, методы расширения и т.д.) Находятся в папке App_Code.
Меня интересует введение Unit Testing (с использованием nunit) по крайней мере в некоторых разделах проекта, продвигающихся вперед. Любое тестирование модуля, которое я буду делать, должно иметь полный доступ ко всему коду, который в настоящее время находится в папке App_Code. До сих пор я сделал предварительное чтение, и, похоже, консенсус:
- Это невозможно для моей текущей настройки
- Для тестирования модулей требуются ссылки на классы, которые являются частью скомпилированной dll, а проект веб-сайта по определению компилируется только во время выполнения.
- Чтобы продолжить, мне нужно будет либо преобразовать весь проект в веб-приложение, либо перенести весь код, который я бы хотел протестировать (то есть: все содержимое App_Code) в проект библиотеки классов и ссылку проект библиотеки классов в проекте веб-сайта. Любой из них обеспечит доступ к классам, которые мне нужны в формате скомпилированных dll, что позволит мне Unit Test их.
Это правильно? Или есть ли другой способ, которым я могу Unit Test без реструктуризации/реорганизации всего моего проекта?