我正在使用Excel(*。xlsx)文件作为数据源创建Datadriven单元(MS单元测试)测试。 它出错并出现以下错误
结果消息:单元测试适配器无法连接到数据 来源或阅读数据。有关故障排除的更多信息 此错误,请参阅“数据驱动单元测试故障排除” (http://go.microsoft.com/fwlink/?LinkId=62412)在MSDN Library中。 错误详细信息:错误[IM014] [Microsoft] [ODBC驱动程序管理器] 指定的DSN包含驱动程序和。之间的体系结构不匹配 应用
我已将“复制到输出”目录设置为:DateRangeTest.xlsx
我还尝试了defaultdir=.\;
,defaultdir=.;
和defaultdir=c:\projectName\bin\debug\;
以下是app.config
<configSections>
<section
name="microsoft.visualstudio.testtools"
type="Microsoft.VisualStudio.TestTools.UnitTesting.TestConfigurationSection, Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
/>
</configSections>
<connectionStrings>
<add name="DateRangeConstr"
connectionString="Dsn=Excel Files;dbq=DateRangeTest.xlsx;defaultdir=.\; driverid=790;maxbuffersize=2048;pagetimeout=5"
providerName="System.Data.Odbc" />
</connectionStrings>
<microsoft.visualstudio.testtools>
<dataSources>
<add name="DateRangeTestDataSource"
connectionString="DateRangeConstr"
dataTableName="Sheet1$"
dataAccessMethod="Sequential"/>
</dataSources>
</microsoft.visualstudio.testtools>
答案 0 :(得分:3)
有(2) options here - 您可以删除已安装的Office产品的DSN要求或安装相反的Excel / Access运行时比特率。
从此改变:
<add name="DateRangeConstr"
connectionString="Dsn=Excel Files;dbq=DateRangeTest.xlsx;defaultdir=.\; driverid=790;maxbuffersize=2048;pagetimeout=5"
providerName="System.Data.Odbc" />
对此:
<add name="DateRangeConstr"
connectionString="dbq=DateRangeTest.xlsx;defaultdir=.\; driverid=790;maxbuffersize=2048;pagetimeout=5"
providerName="System.Data.Odbc" />
无论您使用的是Office 2010还是Office 2013,此修复都应该相同。
要测试此更改,您应该能够在安装后为x86和x64配置 Excel文件 DSN。
%WINDIR%\SysWOW64\odbcad32.exe
%WINDIR%\System32\odbcad32.exe
单击“Excel Files”,然后单击“Configure”,您将看到一个对话框。如果单击“配置”时发生错误 - 您没有为该位置安装正确的办公室驱动程序。
答案 1 :(得分:0)