Я использую VSTS 2K8 и настроил проект модульного тестирования. В нем у меня есть тестовый класс с методом, который делает простое утверждение. Я использую электронную таблицу Excel 2007 в качестве источника данных.
Мой метод испытаний выглядит следующим образом:
[DataSource("System.Data.Odbc",
"Dsn=Excel Files;dbq=|DataDirectory|\\MyTestData.xlsx;defaultdir=C:\\TestData;driverid=1046;maxbuffersize=2048;pagetimeout=5",
"Sheet1",
DataAccessMethod.Sequential)]
[DeploymentItem("MyTestData.xlsx")]
[TestMethod()]
public void State_Value_Is_Set()
{
string expected = "MD";
string actual = TestContext.DataRow["State"] as string;
Assert.AreEqual(expected, actual);
}
Как указано в атрибутах оформления метода, моя таблица Excel находится на моем локальном диске C: /. В нем лист, где находятся все мои данные, называется «Лист1».
Я скопировал электронную таблицу Excel в свой проект и установил для нее действие Build Action = "Content", а для параметра "Копировать - выходной каталог" = "Копировать, если новее".
При попытке запустить этот простой модульный тест я получаю следующую ошибку:
Адаптер модульного тестирования не смог подключиться к источнику данных или прочитать данные. Дополнительные сведения об устранении неполадок, связанных с этой ошибкой, см. В разделе «Устранение неполадок в модульных тестах, управляемых данными» (http://go.microsoft.com/fwlink/?LinkId=62412) в библиотеке MSDN.
Сведения об ошибке: ОШИБКА [42S02] [Microsoft] [Драйвер ODBC Excel] Механизму базы данных Microsoft Office Access не удалось найти объект «Лист1». Убедитесь, что объект существует, и что вы правильно написали его имя и путь.
Я проверил, что имя листа написано правильно (то есть Sheet1), и я убедился, что мои источники данных установлены правильно.
Поиски в Интернете почти не включались. И я полностью в тупике.
Вся помощь или вклад приветствуется !!!!