No architecture is complete without an easy way to test the functionality. My recommended strategy is to use two types of tests: unit and integration.
As far as test setup goes, there is no clear winner for a test framework. xUnit.NET, NUnit and the ...