Unit testing sqlpackage.exe“;“无法打开数据库”;随机发生

Unit testing sqlpackage.exe“;“无法打开数据库”;随机发生,unit-testing,sql-server-data-tools,Unit Testing,Sql Server Data Tools,我正在使用sqlpackage.exe创建动态数据库,以便对其运行单元测试。这项工作在本地100%的时间,但不是在TFS。所有单元测试都使用locahost\sqlexpress的集成安全性。TFS将随机导致sqlpackage.exe返回以下错误 对于单元测试,我使用了所描述的模式,但是经过一些修改,使用了带有sqlpackage的dacpac,这与nhibernate的模式导出功能相反 sqlpackage error : *** Could not deploy package. s

我正在使用sqlpackage.exe创建动态数据库,以便对其运行单元测试。这项工作在本地100%的时间,但不是在TFS。所有单元测试都使用locahost\sqlexpress的集成安全性。TFS将随机导致sqlpackage.exe返回以下错误

对于单元测试,我使用了所描述的模式,但是经过一些修改,使用了带有sqlpackage的dacpac,这与nhibernate的模式导出功能相反

sqlpackage error    : *** Could not deploy package.
sqlpackage error    : Cannot open database "MessagesRepositoryTests" requested by the login. The login failed.
sqlpackage error    : Login failed for user 'DOMAIN\TFSService'.
其他(随机)错误包括另一行提到它未能导入目标模型

sqlpackage error    : *** Could not deploy package.
sqlpackage error    : Failed to import target model MessagesRepositoryTests. Detailed message Cannot open database "MessagesRepositoryTests" requested by the login. The login failed.
sqlpackage error    : Login failed for user 'DOMAIN\TFSService'.
sqlpackage error    : Cannot open database "MessagesRepositoryTests" requested by the login. The login failed.
sqlpackage error    : Login failed for user 'DOMAIN\TFSService'.
“域\t服务”已被授予每个服务器角色(sysadmin、public等)


有人知道为什么在我所有的测试中都会间歇出现这种情况吗?请记住,这只发生在TFS构建自动化单元测试中。

我不确定原因的实际根源,但当我从构建过程模板中删除“Delete Test Result”目录时,此问题已得到解决。它必须与要删除和重新创建的日志/数据文件添加到的目录有关。此后,我将代码更改为始终将测试数据库存储在C:\驱动器下的文件夹中