How do I run NUnit in debug mode from Visual Studio?

后端 未结 19 1237
闹比i
闹比i 2020-11-30 17:59

I\'ve recently been building a test framework for a bit of C# I\'ve been working on. I have NUnit set up and a new project within my workspace to test the component. All wor

相关标签:
19条回答
  • 2020-11-30 18:09

    Simply remove the line that looks like

    <ProjectTypeGuids>
        {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
    </ProjectTypeGuids>
    

    from your project file. This line basically tells VS.Net that it's a Test project, thus the "Cannot start test project". FYI here the 1st Guid says "it's a test", the 2nd says "it's C#". For information on those Guids: http://www.mztools.com/Articles/2008/MZ2008017.aspx

    0 讨论(0)
  • 2020-11-30 18:09

    In Nunit 3.0.1 (I'm using VS2013), Open from main menu > Test > Windows > Test Explorer. Then in "Test explorer", right-click the test case, you might see:

    Hope this helps.

    0 讨论(0)
  • 2020-11-30 18:09

    For me solution was to adapt nunit configuration file. To use nunit with 4.5-.Net framework and x64 build option, I had to add one line to startup tag (supported runtime-version).

    <startup useLegacyV2RuntimeActivationPolicy="true">
            <!-- Comment out the next line to force use of .NET 4.0 -->
            <supportedRuntime version="v4.0.30319" />
    </startup>
    

    Afterwards, I could start by right-click on the Testproject Debug -> Start new instance. Before, I needed to again manually attach the project to the process.

    My Debug properties were, C:\Program Files (x86)\NUnit 2.6.4\bin\nunit.exe with argument of the location of the .dll to be tested.

    More information: nunit for testing with .NET 4.0

    0 讨论(0)
  • 2020-11-30 18:10

    In addition to the answer provided by @Justin here are some more details for NUnit 2.6.

    Using NUnit 2.6 attach to nunit.exe or nunit-console.exe and NOT the agent. The configuration noted by @Justin is slightly different. Below is an example from nunit.exe.config (same for nunit-console.exe.config).

    <startup useLegacyV2RuntimeActivationPolicy="true">
      <!-- Comment out the next line to force use of .NET 4.0 -->
      <supportedRuntime version="v2.0.50727" />  
      <supportedRuntime version="v4.0.30319" />
    </startup>
    

    For .NET 4 test project, to get break points to hit, you will have to comment out or remove the v2.0 line as the comment suggests. Once I did that I was able to debug the .NET 4.0 test project.

    0 讨论(0)
  • 2020-11-30 18:10

    See if this helps.. How to add NUnit in Visual Studio

    (RighteousRant)Although personally I don't like this approach.. If you need a debugger while you are test-driving your code, it's a "smell" in that you do not have enough confidence/know how your code works & need the debugger to tell you that. TDD should free you from needing a debugger if done right. Use 'Attach debugger to NUNit' only for rare cases or when you are wading in someone else's code.

    0 讨论(0)
  • 2020-11-30 18:11

    Remove ProjectTypeGuids from the project file.

    0 讨论(0)
提交回复
热议问题