我有具有以下结构的 ac# 解决方案:
mySolution
myProject
myProject.MSTests
References
Microsoft.VisualStudio.QualityTools.UnitTestFramework
sutMSTests.cs
sutMSTests.cs:
[TestClass()]
public class sutMSTests
{
[TestMethod]
public void MyTest0()
{
Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(4, 2 + 2);
}
}
当我尝试通过测试、运行、解决方案中的所有测试运行测试时,我在 VS2008 状态行中得到以下信息:
没有运行任何测试,因为没有加载测试或禁用了选定的测试。
测试,Windows,测试视图显示没有测试。
注意:我手动创建了测试(适用于 xUnit.net),而不是使用 Microsoft 的向导。
我已经将我手工创建的 MSTest 设置与我使用向导生成的另一个测试设置进行了比较,它们看起来非常相似。
问题:上述错误消息最可能的原因是什么?
编辑 2010-02-25: 更多信息:
我右键单击解决方案项目文件夹,然后选择添加,新建项目,键入测试项目,测试文档::Visual Studio 测试项目模板。
检测到并通过了新项目的默认无操作测试“TestMethod1”。
但是,我的测试没有显示出来......所以我将我的测试方法复制并粘贴到默认的测试测试项目“TestProject1”中。
我的测试是在“TestProject”中检测到的,但不是在其原始位置。
我将“TestProject1”的文件、组织和设置与我手工创建的测试项目进行了仔细比较。
在这一点上,我猜测Visual Studio 测试项目模板进行了一些不易检测的设置。
imo,手动创建一个测试项目应该和使用 Visual Studio 测试项目模板创建一个一样容易。
请注意:我并不是说我反对使用 Visual Studio 测试项目模板;对我来说,我喜欢了解幕后的东西,因为这使我成为一个更好的程序员。