1

Чтобы реализовать запуск и повторное выполнение моих тестов интеграции неограниченное количество раз, я хотел бы использовать SSDT в VS2012 для публикации в экземпляре файла LOCALDB и запуска EF в отношении этого файла во время тестов интеграции.SSDT: как развернуть в конкретный файл LOCALDB?

Несколько замечаний:

  • Мы используем EF Database первый
  • У нас уже есть SSDT проект, который мы будем использовать для развертывания в полной базы данных в наших различных средах
  • Я знаю, что SSDT использует внутренне экземпляр LOCALDB для сборки/развертывания/проверки ошибок, поэтому развертывание на другом пользовательском локальном диске кажется, что оно должно иметь смысл/быть выполнимым

F ew вопросы:

  1. Могу ли я установить в конкретный файл LOCALDB с помощью SSDT?
  2. Могу ли я сделать это из командной строки, чтобы автоматизировать его при выполнении интеграционных тестов?
  3. Это похоже на хорошую идею для интеграционных тестов с EF или есть лучший способ? ;-)

Спасибо всем

ответ

1
  1. Вы можете изменить LocalDB для SSDT в опции отладки для проекта. По умолчанию для параметров отладки установлены экземпляр (localdb) и имя базы данных, соответствующее проекту. У вас может быть больше успеха с публикацией профилей, если вы пытаетесь перенаправить изменения проекта на сервер БД. Вы можете использовать те, у которых есть SQLPackage, чтобы вносить изменения вместе с известным набором параметров в заранее определенный сервер/базу данных.

  2. Вы можете определенно нажать изменения в командной строке. Мы делаем это с помощью MSBuild для создания файла dacpac, а затем SQLPackage для публикации изменений с dacpac на соответствующий сервер/базу данных.

  3. Не могу сказать наверняка на этом. Если это сработает для вас, это, вероятно, хорошее начало. Мы разрабатываем БД вне EF и стараемся сделать это сначала, а не доверять EF, чтобы создать хорошую реляционную модель.

У меня есть несколько сообщений в блоге на SSDT SQL проектов на http://schottsql.blogspot.com/search/label/SSDT, которые могут быть полезны.

+0

Hi Peter. Очень полезный ответ. Попробует использовать параметр публикации, чтобы нажать на localdb. – Talisker