Monday, April 11, 2011

NUnit doesn't find tests in assembly

Hi,

I inherited an assembly with MSTest, but these tests were run using nunit-console on the build machine (not sure how it worked). So I decided to sort it out and change them to proper NUnit tests, but now nunit-console (or gui) can't find any tests. They run just fine using ReSharper test runner though. Any idea what could be missing?

From stackoverflow
  • Are your test fixtures, classes and methods, public? They have to be for NUnit to find them.

  • Check:

    • Is the class public?
    • Does it have a public parameterless constructor (e.g. the default one if you don't specify any other constructors)
    • Does it have the [TestFixture] attribute at the class level?
    • Is each test public?
    • Does each test have the [Test] attribute?
    • Is each test parameterless?

    I believe some versions of NUnit were able to find tests based on their names, e.g. TestFooBarBaz() without the [Test] attribute, but I don't know what the state of this is now - it could explain the discrepancy though.

  • Thanks for help, everyone. Upgrading to the latest NUnit framework fixed the problem (all the obvious things you suggested where ok).

    Frederik Gheysels, you can try that as well I guess.

    Frederik Gheysels : I've version 2.4.7; it seems that the latest version is 2.4.8 ... I'll give it a shot. thx.

0 comments:

Post a Comment