繁体   English   中英

如何向C#应用程序添加MSTest单元测试支持

[英]How do I add a MSTest unit test support to a C# application

如何在VS2012中的现有C#应用程序项目中添加MsTest支持?

我希望能够将单元测试添加到应用程序项目中,并让IDE集成在编辑器中显示“单击运行”图标。

希望有创建一个单独的项目。

[EDIT1]

对于那些感兴趣的人来说,这在NUnit中非常简单,并且“开箱即用”。 如果您有一个大型WPF应用程序,并希望能够从IDE启动每个UI窗口以进行预览或调试,而无需运行整个应用程序并导航到您要查看的窗口,那么这样的简单内联测试就克服了VS设计师缺乏这个基本功能。

#if DEBUG
    [TestFixture]
    public class MainWindowTests
    {
        [Test]
        [STAThread]
        public void Test1()
        {
            Application a = new Application();
            MainWindow w = new MainWindow();
            a.Run(w);
        }
    }
#endif

对于使用.csproj文件中的条件引用的发布版本,也可以轻松地排除NUnit支持程序集引用。

(支持从设计器运行对话框,以前在Visual Studio 6中一直是内置功能,但是像MS演进VS一样,许多其他有用的功能都丢失了)。

不得不创建一个单独的项目,否则你只能在ReSharper中运行它们(resharper几乎可以运行你坚持[TestMethod]任何东西)。

不要反对微软设计测试框架的方式 - 你需要创建一个单独的项目。 测试项目包含许多您不希望成为应用程序一部分的内容(例如,对Microsoft测试程序集的引用)。

在VS2017中使用netcoreapp 2.0(但我认为它可以与框架一起使用)从Nuget将这些程序集添加到项目中: - Microsoft.NET.Test.Sdk - MSTest.TestAdapter - MSTest.TestFramework

然后,任何标记为[TestCethod]的标记为[TestClass]的公共类的公共方法都可以在Visual Studio中作为测试运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM