我有一些测试是使用Microsoft.VisualStudio.TestTools内置的。单元测试,但不能让它们运行。

我使用visual studio 2012终极版。

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

我已经尝试构建解决方案和项目。测试资源管理器显示“构建解决方案以发现所有可用的测试”。单击“全部运行”可在解决方案中构建、发现和运行所有测试。

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


我也试过遵循这个:http://msdn.microsoft.com/en-US/library/ms379625%28v=VS.80%29.aspx但没有成功:当我被要求右键单击并选择创建测试时,我被困在了开始的部分。没有创建测试。


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

using Microsoft.VisualStudio.TestTools.UnitTesting;

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

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


当前回答

这只咬了我一口。我向项目添加了一个测试,但无法在测试资源管理器中显示它。我以前的检查结果都出来了最后,我意识到我只是在查看一个特定的播放列表,并且我还没有将新的测试添加到播放列表中。如果你使用播放列表,选择“所有测试”,看看VS是否找到你的测试并在测试资源管理器中显示它们。然后你也可以将它们添加到所需的播放列表中。

其他回答

我在VS2013终极版的网络共享中打开解决方案时遇到了同样的问题。

我通过开机来解决这个问题

控制面板-> Internet选项->“安全”选项卡->单击“本地intranet”,单击站点并确保勾选“自动检测intranet网络”。

以我为例,我有3个测试项目,是用Visual Studio 2017创建的(但我认为这无关紧要),其中只有两个被测试资源管理器发现。我意识到第三个项目有不同版本的Microsoft.VisualStudio.QualityTools.UnitTestFramework dll。 我在NuGet管理器中更新了它,测试出现了。

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

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

在谷歌搜索“visual studio看不到测试”后,我来到了这里,所以我想分享一下我的问题。我可以构建我的解决方案,测试也存在,但我看不到它们!这是IDE的一个怪癖,导致了这个问题。请看下图的解释和修复:

我有Visual Studio 2012,但在测试资源管理器中看不到测试,

所以我安装了以下软件: 单元测试适配器

这为我解决了问题!