Support for NUnit 2.4 features (like SetUpFixtureAttribute)?

Hello all,
Are there any plans to support new NUnit 2.4 features in the UnitTestRunner, such as the new SetUpFixtureAttribute? (Link)

This attribute allows one to specify setup/teardown that is run once for all test fixtures in a single namespace (or even assembly).

Thanks,
]]>


Javan

5 comments
Comment actions Permalink

"jbg" <no_reply@jetbrains.com> wrote in message
news:30043664.1178225424451.JavaMail.itn@is.intellij.net...

Hello all,
<p>
Are there any plans to support new NUnit 2.4 features in the
UnitTestRunner, such as the new SetUpFixtureAttribute? (<a
href="http://www.nunit.org/index.php?p=setupFixture&r=2.4">Link</a>)
<p>
This attribute allows one to specify setup/teardown that is run once for
all test fixtures in a single namespace (or even assembly).
<p>
Thanks,<br>


And while you're at it, to support selecting tests by category.

John


0
Comment actions Permalink

Hello jbg,

We didn't plan to support full NUnit 2.4 feature set, but some features can
make its way into the release. We will check new features and get back to
you with more details.
Meanwhile, you can list what you want most, so we have more information for
decision. Thanks.

Sincerely,
Ilya Ryzhenkov

JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"


j> Hello all,
j>
j> j> j> Are there any plans to support new NUnit 2.4 features in the j> UnitTestRunner, such as the new SetUpFixtureAttribute? ( href="http://www.nunit.org/index.php?p=setupFixture&r=2.4">Link) j> j>

j> j> This attribute allows one to specify setup/teardown that is run once j> for all test fixtures in a single namespace (or even assembly). j> j>

j> j> Thanks,
j> j> Javan j>]]>




0
Comment actions Permalink

Thanks for your reply, Ilya.

In addition to support for SetUpFixtureAttribute, support for the new add-in extensibility mechanism would be a nice-to-have (add custom fixtures and attributes). Also, being able to specify the ApplicationBase and PrivateBinPath for the test AppDomains would be excellent.

We also use the per-dll .config file to set the TestRunner ApartmentState to STA (which is required for some of our tests), but UnitTestRunner uses this ApartmentState setting already.

We have a few members of our team who really like being able to debug individual tests using the Resharper unit test runner. However, since the runner doesn't actually use NUnit to execute tests, we are limited in the features that we can use in our tests.

0
Comment actions Permalink

Hello jbg,

Thanks for information. SetUpFixtureAttribute will not go into 3.0 release,
sorry. Add-in extensibility would be nice, of course, but we can't use NUnit
itself or any code from it because of NUnit license limitations. So we would
have to reimplement all these features ourselves. That takes a lot of time,
I have to say! However, we support .config settings now (STA/MTA and thread
priority), debugging support has been improved (Edit & Continue now works),
and many bugs has been fixed. So that is for version 3.0. I think we will
go a bit further in supporting new NUnit features in next version and will
also try to support mbUnit.

I didn't quite understand what do you mean by setting ApplicationBase & PrivateBinPath.
Do you mean there is some .config option we should support or just some per-solution
configuration?

Sincerely,
Ilya Ryzhenkov

JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"


j> Thanks for your reply, Ilya.
j>
j> In addition to support for SetUpFixtureAttribute, support for the new
j> add-in extensibility mechanism would be a nice-to-have (add custom
j> fixtures and attributes). Also, being able to specify the
j> ApplicationBase and PrivateBinPath for the test AppDomains would be
j> excellent.
j>
j> We also use the per-dll .config file to set the TestRunner
j> ApartmentState to STA (which is required for some of our tests), but
j> UnitTestRunner uses this ApartmentState setting already.
j>
j> We have a few members of our team who really like being able to debug
j> individual tests using the Resharper unit test runner. However,
j> since the runner doesn't actually use NUnit to execute tests, we are
j> limited in the features that we can use in our tests.
j>


0
Comment actions Permalink

Add-in extensibility would be nice, of course, but we can't use NUnit
itself or any code from it because of NUnit license limitations.


I suppose your company's lawyers have the final say, but the license certainly seems to permit you to redistribute modified binary-only versions, without source, as long as you acknowledge the NUnit authors in the product documentation. I'm not sure what the problem would be. :)

So we would have to reimplement all these features ourselves.
That takes a lot of time, I have to say!


Yes, I certainly wouldn't expect NUnit extension support without leveraging the NUnit code directly! :)

I didn't quite understand what do you mean by setting ApplicationBase &
PrivateBinPath.
Do you mean there is some .config option we should
support or just some per-solution configuration?


Those settings are configured in the NUnit project file (*.nunit) (see NUnitProject.cs). A TestPackage is created from the NUnitProject (or a default one is created if you aren't using a project file) and this TestPackage is used to initialize the System.AppDomainSetup class used when a new AppDomain is created. So, this allows you to configure the ApplicationBase and PrivateBinPath on the AppDomain used to execute the test, which is required if you don't have all of your DLLs in the same directory or if you want your test DLLs in a different directory from your production code.

(Note: there is a bug in NUnit 2.4.1 where these settings are not copied correctly if each test fixture is loaded into a separate AppDomain)

0

Please sign in to leave a comment.