为什么visual studio 2012找不到我的测试?

我有一些测试使用内置的Microsoft.VisualStudio.TestTools.UnitTesting ,但无法让它们运行。

我正在使用Visual Studio 2012终极版。

我有两个项目的解决方案; 一个测试, using Microsoft.VisualStudio.TestTools.UnitTesting[TestClass]之前的类, [TestMethod]之前的测试方法和参考Microsoft.VisualStudio.QualityTools.UnitTestFramework (版本10.0.0.0,运行时版本v2.0.50727)。 我已经尝试了网络框架3.5,4和4.5其他人给出了一个重新定位错误。

我试图建立解决方案和项目。 测试浏览器有消息“构建你的解决方案来发现所有可用的测试。 点击“全部运行”来构建,发现并运行解决方案中的所有测试。

所以问题是:如何让visual studio找到测试?


也试图按照此:http://msdn.microsoft.com/en-US/library/ms379625%28v=VS.80%29.aspx但没有成功:我被困在部分入门,当被问到右键点击并选择create tests 。 没有create tests


我有这个测试(它编译,但没有在测试资源管理器中显示):

using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace tests {
    [TestClass]
    public class SimpleTest {
        [TestMethod]
        public void Test() {
            Assert.AreEqual("a","a", "same");
        }
    }
}

我现在已经发现(见下面的删除答案),这是因为它在共享驱动器上,但我还不知道如何避开它。 (关于安全设置可能)。


我有同样的症状,但在不同的情况下。

我必须为Peter Lamberg的解决方案增加一个额外的步骤 - 清理您的解决方案/项目。

我的单元测试项目的目标是x64。 当我创建该项目时,它最初的目标是x86。

切换到x64后,我的所有单元测试都消失了。

我不得不去测试菜单 - >测试设置 - 默认处理器架构 - > x64。

他们仍然没有出现。

做了一个构建。

仍然没有出现。

最后做了一个清洁

然后他们出现了。

我发现Clean Solution和Clean在设置发生变化时让解决方案玩球非常有用。 有时候我必须走到极点,删除objbin目录并重建。


请将public关键字添加到您的类定义中。 您的测试类目前在其自己的程序集外部不可见。

namespace tests {
    [TestClass]
    public class SimpleTest {
        [TestMethod]
        public void Test() {
            Assert.AreEqual("a","a", "same");
        }
    }
}

这有时会起作用。

检查“测试”菜单下的处理器架构是否与用于构建解决方案的处理器架构相匹配。

测试 - >测试设置 - >默认处理器架构 - > x86 / x64

正如其他文章中提到的那样,确保您打开了“测试浏览器”窗口。 测试 - > Windows - >测试资源管理器

然后用测试重建项目应使测试出现在测试浏览器中。

编辑:正如Ourjamie指出的那样,做一个干净的构建也可能有所帮助。 除此之外,这里还有一件我遇到的事情:

“配置管理器”中的“构建”复选框取消了我在解决方案下创建的新测试项目。

转到生成 - >配置管理器。 确保您的测试项目已针对所有解决方案配置和解决方案平台检查构建复选框。

链接地址: http://www.djcxy.com/p/61617.html

上一篇: Why does visual studio 2012 not find my tests?

下一篇: Get Facebook's Application Access Token