How would design and organize tests for the concrete methods of an abstract class? Specifically in .NET.
Any reason not to just include that in the testing of one of the instances?
If that doesn't work, you could probably create a subclass just for testing with no unique functionality of its own.
The first thing that comes to mind is to test those methods in a concrete child class.
You have to create a subclass that implements the abstract methods (with empty methods), but none of the concrete ones. This subclass should be for testing only (it should never go into your production code). Just ignore the overridden abstract methods in your unit tests and concentrate on the concrete methods.
You have to define and create a concrete test class that inhereits from the abstract. Typically it will be a light shim that does nothing but pass through calls.
Use Rhino Mocks, it can generate implementations of the abstract class at runtime and you can call the non-abstract methods.