类 ReflectionTestUtils


  • public abstract class ReflectionTestUtils
    extends Object
    ReflectionTestUtils is a collection of reflection-based utility methods for use in unit and integration testing scenarios.

    There are often times when it would be beneficial to be able to set a non-public field, invoke a non-public setter method, or invoke a non-publicconfiguration or lifecycle callback method when testing code involving, for example:

    • ORM frameworks such as JPA and Hibernate which condone the usage of private or protected field access as opposed to public setter methods for properties in a domain entity.
    • Spring's support for annotations such as @Autowired, @Inject, and @Resource which provides dependency injection for private or protected fields, setter methods, and configuration methods.
    • Use of annotations such as @PostConstruct and @PreDestroy for lifecycle callback methods.

    In addition, several methods in this class provide support for static fields and static methods — for example, setField(Class, String, Object), getField(Class, String), invokeMethod(Class, String, Object...), invokeMethod(Object, Class, String, Object...), etc.

    从以下版本开始:
    2.5
    作者:
    Sam Brannen, Juergen Hoeller
    另请参阅:
    ReflectionUtils, AopTestUtils