我正在使用TeamCity Professional不断构建和测试我的代码。
我有一些基于MSTest的测试在我的电脑上在VS2010中正常工作但在构建服务器上失败了。
我偷偷摸摸地发现,经过测试,TeamCity在其TEMP_DIR
(可配置)中创建一个临时目录,并仅复制"第一关系"依赖于测试DLL。
例如:我的测试使用NHibernate.dll
复制到临时目录,但其依赖项(即NHibernate.ByteCode.Castle
)没有被复制,测试失败,{{1}例外。
有什么方法可以从测试项目输出目录(Test / bin / debug)运行测试吗?
如果没有,我如何指定应该将哪些DLL复制到临时目录?
答案 0 :(得分:13)
您可以在解决方案中添加 TestSettings 文件,该文件将描述要部署的所有文件。
首先,添加 TestSettings 文件。打开它,然后在“部署”标签中添加您需要的所有文件(.dll)。 然后在TeamCity上,在MSTest构建步骤中,指定要在“附加命令参数”区域中使用的TestSettings文件。例如:“/ testsettings:Local.Testsettings”
这样,您在部署项中指定的所有文件都将复制到临时目录中。