我有一些测试是使用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");
        }
    }
}

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


当前回答

我也有同样的问题,但有点不同。

我用的是visual studio 2012。由于某种原因,只有初始生成文件的测试正在运行。但是另一个文件中的测试没有运行。尝试了张贴在这里的不同解决方案,没有工作。

最后,我发现我在测试类中有一个私有方法,这是类中的第一个方法。我只是把private方法移到test方法后面;所以现在,带有[TestMethod]属性的方法是类中的第一个方法。奇怪,但现在它起作用了。

希望有一天这能帮助到别人。

其他回答

我有时也会有同样的症状。

我所做的是: 1. 关闭测试资源管理器窗口 2. 清洗溶液 3.重新构建解决方案 4. 从Test -> Windows ->测试资源管理器重新启动测试资源管理器窗口。

我在测试资源管理器窗口中得到了我的测试。

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

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

这为我解决了问题!

我发现的一个问题是,如果解决方案在网络驱动器/网络位置/共享驱动器上运行,则在测试资源管理器中找不到测试(什么也没有显示)

您可以通过添加一个环境变量来解决这个问题。

COMPLUS_LoadFromRemoteSources,将其值设置为1

问题是测试运行程序配置为不从远程驱动器运行测试。当我将项目复制到本地驱动器时,它工作得很好,但我需要在共享驱动器上(不记得为什么)。

我读到过它可以配置为在共享驱动器上工作,但一直没有这样做,因为当我发现这个解决方案时,我已经在Debian上切换到MonoDevelop了。

对我来说是另一回事。我已经安装了一个包,然后卸载它,重新安装一个较早的版本。这在我的app.config中留下了残留的配置/runtime/ assemblybinding /dependencyIdentity重定向。我必须纠正它。 我通过查看输出窗口并在下拉菜单中选择“测试”来解决这个问题。错误信息就在那里。 这是一个痛苦……我希望它能帮助到其他人。