Отличный способ сделать это - вставить данные (сделать это в диапазоне отрицательных индексов (при условии, что отрицательные значения не используются для производственных данных)) запустить тесты с этим набором данных, а затем откатить транзакцию, как только сделано.
Еще один вариант, который поможет вам лучше протестировать слой данных в будущем, это сделать интерфейс обертывания для слоя базы данных. Затем вы можете смоделировать этот интерфейс, когда запускаете тесты, которые в нем нуждаются.
Обычно вы можете иметь свой объект IDataReader и вызывать IdataReader.GetMeData, и он будет возвращать набор результатов из БД. В этом случае вы будете его издеваться (я использую Rhino Mocks) и скажете ему возвращать ваш набор тестовых данных при вызове GetMeData.
постскриптум Не забудьте использовать внедрение зависимостей для передачи имитационного объекта доступа к базе данных.