Good News / Bad News
The good news is the the first major release of NUnitAddin for quite some time is out (version 0.5 build 105). The bad news is that it only works if the .NET Framework 1.1 is installed. It works with VS.NET 2002 and 2003, but only if 1.1 is there. So far the issue has defeated me. It looks like a NullReferenceException is being thrown deep in the bowels of .NET Remoting. The exception is being thrown by the NUnitAddin.TestRunner.Server program. If anyone can find the problem I would be hugely grateful. You can set a breakpoint in the source and use the new 'Run With... Debugger' feature to step into the offending code. Good luck... ;)
Here are some quick notes on Ad Hoc ASP.NET testing...
After you’ve installed the
addin, the assembly that
defines the attributes can be found here...
Program Files\NUnit
Addin\NUnitAddin.TestRunner.Web\NUnitAddin.TestRunner.Web.dll
Once you’ve linked to that, define an .aspx
file with a code behind that looks something like
following. You
should then be able to right click and ‘Run Test(s)’
anywhere in the white space inside the 'test()' method.
using
NUnitAddin.TestRunner.Web;
[Page("Test.aspx")]
public
class
Test : System.Web.UI.Page
{
private
void
Page_Load(object
sender,
System.EventArgs
e)
{
Debug.WriteLine("Page_Load");
}
[Query("name=value"), Event("PreRender")]
private
void
test()
{
Debug.WriteLine("debug output...");
Debug.Assert(Request.QueryString["name"]
== "value");
}
#region
Web Form Designer generated code
}
Each code behind class you want to test must have a
Page attribute on the class. The Query and Event attributes are optional and can
appear on either the class or the test methods. Once you’ve done this you can right click and run
methods. You can
also right click and run inside the class but outside of
any methods. This will render the page, sending any exceptions to
the test window.
You’ll find the test runner modifies the ‘Web.config’ file when the test is run. This is to add a custom
IHttpModule (to do the
interception). This is what the VS.NET warning about a file changing
is about. I need
to find a fix for this.
Let me (and the rest of the world ;) know how you get
on.
PS. A lot has changed in the 0.5 release. Don't be surprised if there is the odd issue (but please tell me about it). The latest 0.4 build is pretty stable, but doesn’t have any of the ASP.NET testing features.