c# - 如何从 Visual Studio 以 Debug模式运行 NUnit?

标签 c# visual-studio-2008 unit-testing testing nunit

我最近一直在为我一直在研究的一些 C# 构建一个测试框架。我在我的工作区中设置了 NUnit 和一个新项目来测试该组件。如果我从 Nunit (v2.4) 加载我的单元测试,一切都很好,但我已经到了在 Debug模式下运行并设置一些断点非常有用的地步。

我已经尝试了几个指南中的建议,它们都建议更改测试项目的“调试”属性:

Start external program: C:\Program Files\NUnit 2.4.8\bin\nunit-console.exe
Command line arguments: /assembly: <full-path-to-solution>\TestDSP\bin\Debug\TestDSP.dll

我在那里使用的是控制台版本,但也尝试过调用 GUI。当我尝试开始调试时,两者都给我同样的错误:

Cannot start test project 'TestDSP' because the project does not contain any tests.

这是因为我通常将\DSP.nunit 加载到 Nunit GUI 中并且那是进行测试的地方吗?

我开始认为问题可能是 VS 想要运行它自己的测试框架,这就是它找不到 NUnit 测试的原因?

编辑:对于那些询问测试装置的人,我在 TestDSP 项目中的一个 .cs 文件大致如下所示:

namespace Some.TestNamespace
{
    // Testing framework includes
    using NUnit.Framework;

    [TestFixture]
    public class FirFilterTest
    {
        [Test]
        public void Test01_ConstructorTest()
        {
            ...some tests...
        }
    }
}

...我对 C# 和 NUnit 测试框架还很陌生,所以我完全有可能错过了一些关键信息;-)

最终解决方案:最大的问题是我使用的项目。如果您选择 Other Languages -> Visual C# -> Test -> Test Project ...当您选择项目类型时,Visual Studio 将尽可能使用它自己的测试框架告诉。您应该选择一个普通 C# 类库项目,然后我选择的答案中的说明将起作用。

最佳答案

当我需要调试我的 NUnit 测试时,我只需使用“Debug|Attach to Process”附加到 NUnit GUI 应用程序 nunit-agent.exe 并从 GUI 运行测试。我的测试(或他们正在测试的代码)中的任何断点都被命中。我是否误解了您的问题,或者这对您有用吗?

关于c# - 如何从 Visual Studio 以 Debug模式运行 NUnit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/759854/

相关文章:

c# - .NET Maui 不确定进度条

c# - 不为同步请求调用中间件

c# - 将任何用户输入添加为 XML 文档中的节点

c# - asp.net 下拉回发在 Firefox 上不起作用

visual-studio-2008 - 在VS2008中,对于网站的FTP发布,是否可以保存FTP登录密码?

c# - ADO.Net DataReader 超时问题

c++ - 调用 LoadFrame() 时断言失败 MFC、RIBBON、VS2008、C++

java - JMockit:使用 @Mocked 时期望似乎正在寻找确切的实例

java - 用于java单元测试的嵌入式OrientDB服务器

遗留代码的 Java 重构策略