2016-03-01 31 views
0

我在当前正在处理的项目中遇到问题。我们使用默认模板运行TFS2013构建。输出位置设置为“PerProject”。该版本包含3个项目。配置TFS构建以隔离每个项目的自动化测试

  • 溶液A,用两个出版的NuGet包:V1.0 & V2.0
  • 溶液B中,使用溶液A
  • 溶液C中,使用NuGet包V2的NuGet包V1.0。 0解决方案A

到目前为止,这么好。但是,在此版本中运行自动化测试失败。原因是默认的构建模板将所有DLL复制到一个文件夹,然后尝试运行VS Test Runner。这会导致解决方案A的NuGet包v1.0被复制。因此,解决方案C的测试将失败,因为他们期望包v1.0中不存在某些类/属性。

一个可能的解决方案是在解决方案B中将v1.0包更新到v2.0。但是这并没有被优先考虑。

问题:是否可以(使用默认模板)让TFS构建运行每个项目隔离的自动化测试?这可能会解决我们的问题。

+0

为什么在一个构建中使用两个不同版本的相同nuget?为什么选择多个解 –

回答

0

不幸的是,没有这样的设置或任何测试装配。

如果可以实现,那么自动化测试需要在构建期间运行两次。据我所知,自动化测试只会在构建过程中运行一次。

因此,建议您在解决方案B中将v1.0包更新到v2.0。