В типичной архитектуры приложения 3 слоя, есть:Модульное тестирование уровня доступа к данным в архитектуре 3-слойной
- Business Logic Layer
- Data Access Layer
- хранения данных уровня
Я думаю о тестировании DAL (особенно с Entity Framework) без использования реальной БД. Но довольно сложно имитировать сложные ограничения внешнего ключа в БД. А также многое другое.
Теперь я думаю, что это правильный способ для Unit Test DAL? Или какой слой больше всего подходит для Unit Testing?
Я вижу некоторые статьи trying to mock the DbContext in the Entity Framework. С таким подходом сложно моделировать отношения с внешним ключом. Мне интересно, если это в правильном месте для шва. Можем ли мы издеваться над чем-то еще? Например, насмехаясь над слоем ADO.NET? т. Е. БД-память в памяти для ADO.NET для использования.
Согласен. Это путь, если вы действительно хотите «высмеять» DAL. –