Приложения ASP.NET, которые я разработал (на ASP.NET 2.0), обычно поддерживаются базой данных;Подавляющее большинство кода .NET на сервере загружает данные в виде DataSet
или SqlDataReader
и использует их для привязки данных к чему-то вроде DataGrid
.Логическая логика зависит либо от базы данных, либо от интерфейса пользователя.
В этом контексте, как мне реализовать модульные тесты, которые будут выполняться сервером непрерывной интеграции (возможно, CruiseControl.NET)?Должен ли я установить тестовое соединение с базой данных, чтобы оно использовалось для тестирования операций CRUD и более сложных SPROC, или же в коде .NET должно содержаться больше логики, а не в SPROC?Это становится более сложным, когда в базе данных есть структура, которую приложение ожидает найти (например, таблица «Пользователи» в том, что я пишу для CMS).
Кроме того, каковы наилучшие способы сделать блоктестирование пользовательских интерфейсов?Я нашел NUnitASP , который сейчас заброшен, но упоминает Селен и Watir .