Модульное тестирование с идентификационными столбцами - PullRequest
1 голос
/ 23 февраля 2012

Я использую IDENTITY столбцы в моих таблицах SQL Server.

У меня есть модульный тест, где я удаляю запись данных с определенным идентификатором.

Когда я вставляю тестовые данные, я получаю это исключение:

Невозможно вставить явное значение для столбца идентификаторов в таблице 'MyTablename', когда для IDENTITY_INSERT установлено значение OFF

Затем я делаю быстрый тест в моей студии управления:

SET IDENTITY_INSERT MyTablename ON

Там написано Command(s) completed successfully.

Я перезапускаю модульный тест, но все равно получаю ту же ошибку.

Как мне вообще об этом говорить? Я хочу, чтобы моя база данных модульного тестирования со всеми таблицами позволила мне вручную ввести значение для столбца идентификаторов.

1 Ответ

3 голосов
/ 23 февраля 2012

SET IDENTITY_INSERT зависит от сеанса.Вы не можете установить значение true в SSMS, а затем запустить модульное тестирование в другой установке.Команда SET должна быть частью кода модульного теста.

Кроме того, вы можете установить для этой настройки только одну таблицу за раз, поэтому не похоже, что ваш модульный тест будет работать очень хорошоесли вы не установите каждый стол так, как вам нужно.

...