Another option is to apply privileged public introductions that provide pass-through delegation to non-public methods and fields. A simple combination of a doclet and an aspect compiler can provide this level of access for all of your non-public members at once. The doclet generates the aspect source files for application by the aspect compiler prior to the unit test compile.
Write the unit tests against the introductions if you need to test non-public code. I prefer this simple unit test compile-time option to mucking about with the security manager.