TFS构建

时间:2017-06-05 11:28:16

标签: unit-testing tfs

我们有一个由TFS和SQL服务器单元测试构建的解决方案,应该在每个构建上运行。测试部分还包含一个Database项目,该项目应在测试运行之前部署到localDB。 SQL Server单元测试项目的配置是:

<configSections>
        <section name="SqlUnitTesting" type="Microsoft.Data.Tools.Schema.Sql.UnitTesting.Configuration.SqlUnitTestingSection, Microsoft.Data.Tools.Schema.Sql.UnitTesting, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
      <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections>
  <connectionStrings>
    <add name="SnapDBContext" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=SampleDatabase;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
  </connectionStrings>
    <SqlUnitTesting>
        <DatabaseDeployment DatabaseProjectFileName="..\..\..\..\Database\SampleDatabase.sqlproj" Configuration="Debug" />
        <DataGeneration ClearDatabase="true" />
        <ExecutionContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=SampleDatabase;Integrated Security=True;Pooling=False" CommandTimeout="30" />
        <PrivilegedContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=SampleDatabase;Integrated Security=True;Pooling=False" CommandTimeout="30" />
    </SqlUnitTesting>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>

在我的本地计算机上一切正常但在TFS上它失败并出现错误:

  

从配置文件中读取SQL Server单元测试设置时发生错误。单击测试项目,从SQL菜单中打开SQL Server测试配置对话框,将设置添加到对话框,然后重建项目。

这些人认为测试在TFS 2013上运行良好但在升级到TFS 2015后我们开始出现此错误。尝试了在这里和互联网上找到的不同解决方案但没有任何帮助。我错过了什么? 谢谢。

1 个答案:

答案 0 :(得分:0)

尝试使用另一个SQL Server实例(不是localdb,使用另一个SQL Server实例可以正常使用)。

另一方面,您正在使用Windows身份验证,因此请确保构建服务帐户对目标SQL Server具有足够的权限(例如,创建数据库)。