← Back to team overview

nunit-core team mailing list archive

[Bug 494119] Re: NUnit GUI does not show custom exceptions when running tests in a separate AppDomain

 

Postponed to 3.0

** Project changed: nunitv2 => nunit-3.0

-- 
NUnit GUI does not show custom exceptions when running tests in a separate AppDomain
https://bugs.launchpad.net/bugs/494119
You received this bug notification because you are a member of NUnit
Developers, which is subscribed to NUnit V2.

Status in NUnit Test Framework: Triaged

Bug description:
If a test throws one of our custom exception types (e.g., InterfaceBrokerException) and you're running tests via the NUnit GUI, then NUnit shows the following instead of the exception that was actually thrown:

An unhandled System.Runtime.Serialization.SerializationException was thrown while executing this test : Unable to find assembly 'Profitstar.Library, Version=2008.2.338.27793, Culture=neutral, PublicKeyToken=null'.

This is because the tests get run in one AppDomain, and then the results are marshaled to the main AppDomain via .NET serialization; but the Profitstar.Library assembly isn't loaded into the main AppDomain (nor should it be, because then it couldn't be unloaded), so it can't deserialize the exception.

So we end up with no stack trace, no original exception message, and no idea of even what exception type got thrown. 

Is there any way to circumvent the use of a separate AppDomain when using the NUnit GUI?  If not, can something be added to configure that feature?