Я имею дело с добавлением инфраструктуры Dependancy Injection в большой проект, чтобы расширить охват модульного тестирования.
В частности, я хочу рассказать о методе доступа к данным, поэтому я хочу иметь возможность Moq контекста.
Вот пример метода:
public int GetNumberOfLines(int groupId)
{
using (var db = new EntitiesMigrate().AutoLocal())
{
return db.MergeUserLines.ByGroup(groupId).GroupBy(x => x.Number).Count();
}
}
Метод AutoLocal()
- это написанное мною расширение, которое позволяет нам использовать разные строки подключения в каждой среде env и на разных компьютерах разработчиков. Он используется на каждом new EntitiesMigrate()
(просто говорю, может ли он помочь в moqqing).
В настоящее время мы используем тестовый фреймворк Microsoft (внутри VS / 2017), но его использование не является обязательным для улучшения тестовых возможностей.
Мои вопросы:
- Каковы предпочтительные среды для объединения DI и MOQ в EF6 asp.net/mvc и asp.net/web-api?
- Как преобразовать этот метод, используя эти рамки?