MSBuild在自动测试项目上失败

时间:2012-05-25 19:48:04

标签: msbuild vs-unit-testing-framework

我刚刚在我的C#解决方案中添加了一个自动化测试项目,并将其检入我的构建服务器。

使用MSBuild(.NET Framework 3.5)运行构建脚本时,它会给我带来一些错误(例如以下内容):

**cs(2,17): error CS0234: The type or namespace name 'VisualStudio' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)

**.cs(21,17): error CS0246: The type or namespace name 'TestContext' could not be found (are you missing a using directive or an assembly reference?)

**.cs(73,10): error CS0246: The type or namespace name 'TestMethod' could not be found (are you missing a using directive or an assembly reference?)

**.cs(73,10): error CS0246: The type or namespace name 'TestMethodAttribute' could not be found (are you missing a using directive or an assembly reference?)

**.cs(14,6): error CS0246: The type or namespace name 'TestClass' could not be found (are you missing a using directive or an assembly reference?)

**.cs(14,6): error CS0246: The type or namespace name 'TestClassAttribute' could not be found (are you missing a using directive or an assembly reference?)

当我在计算机上运行.NET 3.5 msbuild时,它会正确构建。

构建服务器上没有.NET 4.0,并且不能选择单步执行。任何人都可以建议可能导致差异的原因以及我可以做些什么来成功建立测试项目?

由于

1 个答案:

答案 0 :(得分:2)

如上所述,最简单的方法是在构建服务器上安装适当版本的Visual Studio以获取所有MSTest依赖项。这就是通常所做的事情。

如果由于某种原因你不能这样做,下面的页面显示了如何在没有VS2008安装的情况下使你的依赖项可用:

http://www.shunra.com/shunrablog/index.php/2009/04/23/running-mstest-without-visual-studio/