2017-06-05 77 views
0

我們有一個解決方案,它是由TFS和SQL服務器單元測試構建的,它們應該在每個版本上運行。測試部分還包含一個數據庫項目,在運行測試之前應將其部署到localDB。 對於SQL Server單元測試項目的配置是:TFS上的SQL服務器單元測試版本

<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失敗與錯誤:

An error occurred while SQL Server unit testing settings were being read from the configuration file. Click the test project, open the SQL Server Test Configuration dialog box from the SQL menu, add the settings to the dialog box, and rebuild the project.

的人承擔測試在TFS 2013上運行良好,但在升級到TFS 2015後,我們開始出現此錯誤。試過這裏和互聯網上找到的不同解決方案,但沒有任何幫助。我錯過了什麼? 謝謝。

回答

0

嘗試使用另一個SQL Server實例(不是localdb,使用另一個SQL Server實例對我來說工作正常)。

另一方面,您使用的是Windows身份驗證,因此請確保構建服務帳戶對目標SQL Server具有足夠的權限(例如,創建數據庫)。

+0

我試圖使用另一個SQL Server實例(SQL Server 2014和SQL Express),但沒有運氣。還嘗試玩服務帳戶的權限,並通過不同的憑據,而不是使用Windows身份驗證,結果相同 – Andrew

+0

@Andrew您可以從另一臺機器連接到該SQL Server嗎?不同的憑證是否意味着SQL帳戶(SQL身份驗證)?嘗試將服務帳戶更改爲您的帳戶並檢查結果。 –

+0

謝謝你的回覆。 TFS和SQL服務器都設置在我的本地機器上,所以是的,我可以連接到SQL服務器。 「嘗試將服務帳戶更改爲您的帳戶」可能沒有得到您的想法。 – Andrew

相關問題