Я работаю над этим проектом WebAPI, и мне нужно создать для него модульные тесты. База проекта была создана с использованием VS 2010, а затем был добавлен модуль WebApi.
Работа контроллера как бы мешает тестированию/насмешке. Я использую xUnit и Moq, но нет никакой необходимости придерживаться этих двух.
Приложение использует определенные объекты для работы с базой данных, поэтому у меня есть controllerObject и его конструктор требуют DataAccessObject
У меня проблема с насмешкой над парой контроллер/доступ к данным. Первый тест, который я пытаюсь запустить, это GetAllFromDataBase, но я действительно не знаю, как это сделать.
РЕДАКТИРОВАТЬ:
Я сделал то, что сказал мне Куонг Ле, и теперь все движется, я действительно ценю это. Но я столкнулся с другой проблемой. Для доступа к API существует пара имя пользователя/пароль, и мой контроллер использует Thread.CurrentPrincipal.Identity.Name; сейчас мне нужно будет установить это значение, чтобы оно полностью работало, я думаю.
Также сервис valueServiceMock.Setup (=> service.GetValues ()).Возвращает (новый[] { "значение1", "значение2" } );
похоже, не работает. поскольку код пытается получить доступ к базе данных и ничего не получает, поскольку не может получить действительное имя пользователя для поиска