I hide the base constructor since I do not want that can be create empty instances
If you want to hide the default constructor to the rest of the application but you want to use it in the test project you should define explicitly the default constructor as internal:
internal MyClass(){}
and then add the InternalsVisibleTo attribute to the AssemblyInfo.cs of the project in which MyClass is defined.
If your test project's name is: MySolution.Fixtures you will have:
[assembly: InternalsVisibleTo("MySolution.Fixtures")]
In this way you can use the default constructor in your test and isolate it from the fluent constructor