编码的UIunit testingExcel连接string不工作

我正在尝试使用Excel电子表格(xlsx)中的dynamic数据来编码UI。 我的DataSource属性似乎有问题。 我得到一个错误,说无法连接到数据源。 这是我的连接string:

[DataSource("System.Data.Odbc", "Dsn=Excel Files;dbq=|DataDirectory|C:\\Test1.xlsx;defaultdir=C:\\;driverid=1046;maxbuffersize=2048;pagetimeout=5", "Sheet1$", DataAccessMethod.Sequential), DeploymentItem("Test1.xlsx"), TestMethod] 

该xlsx文件是有效的,并在正确的位置。

谢谢

dbq子句看起来不对。 |DataDirectory| 部分是与该值的其余部分连接的参数。 所以实际上这个子句是说从一个名为ValueOfDataDirectoryC:\\Test1.xlsx的文件中获取数据ValueOfDataDirectoryC:\\Test1.xlsx 。 Microsoft文档(请参阅http://msdn.microsoft.com/zh-cn/library/ee624082.aspx )显示了示例(由我添加的换行符):

 DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)}; dbq=|DataDirectory|\\Data.xls; defaultdir=.;driverid=790;maxbuffersize=2048; pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod] 

注意上面没有任何C: :。

尝试将dbq子句更改为dbq=C:\\Test1.xlsx

testing

将文件保存为xls而不是xlsx,并删除“| DataDirectory |” 从连接string。 这应该帮助:)

尝试使用此连接string的xls文件:

 [DataSource("System.Data.Odbc", @"Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)};dbq=C:\\Test1.xls;defaultdir=.;driverid=79‌​0;maxbuffersize=2048;pagetimeout=5;readonly=true","Sheet1$", DataAccessMethod.Sequential), TestMethod] 

有同样的问题,并感谢在这里它现在是固定的:)

.Xls文件添加到解决scheme并logging文件的path

尝试改变

 [DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)}; dbq=[FullPath Of your .xls file]; defaultdir=.; driverid=790; maxbuffersize=2048; pagetimeout=5; readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod] 

例如:

 [DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)}; dbq=C:\\Users\\user1\\documents\\visual studio 2012\\Projects\\Demo\\Demo\\Book1.xlsx; defaultdir=.;driverid=790; maxbuffersize=2048;pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod] 
Interesting Posts