Hi Guys,

I've been looking around for a solution to a problem I've had for the Unit Tests in 
our current application, and noticed that running our tests in a separate appdomain 
might just be what we need to fix the issue.

I looked around, and notice, however, that the fork attribute in the current nant 
NUnit support does not work as is, so I decided to give it a try at fixing it.

I've already done some work in this area, and I think it's really not hard to fix. 
However, I've run into a conundrum, so I thought I'd solicit your input to see what 
you guys think it's the best alternative:

The problem right now is that when the new AppDomain is created, an instance of 
NUnitTestRunner is created in it. However, this class requires an instance of 
NUnitTest as an argument to it's one an only constructor. Now, passing it would be no 
problem, except that it would require the NUnitTest class to be Serializable, or 
MarshalByRefObject-derived.

Personally, I think the first option is the right choice: However, that would impose 
changes that would rip throughout the entire NAnt library, since all the base classes, 
attribute classes, etc, would need to become serializable. That means that pretty much 
everything from Project and Element all the way down would need to be changed to 
include the Serializable attribute. 

OTOH, making them MarshalByRefObject would be somewhat simpler, since basically only a 
few base classes would need to be modified to derive from MarshalByRefObject.

Either way, performance could suffer somewhat when running the NUNit tests in a new 
appdomain, though I think the first option might be a little worse in this.


So, what do you guys think? I'd be happy to fix it today or tomorrow, but I want to 
ensure we do the right thing.

-- 
Tomas Restrepo
[EMAIL PROTECTED]






-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to