anchor.diff:  	}
   ----
   
  -+
  -
   If you need to merge or override the configuration for a given level of the context
   hierarchy within a test class hierarchy, you must explicitly name that level by
   supplying the same value to the `name` attribute in `@ContextConfiguration` at each
  
positive.code: overkill for a particular use case, the simpler __current level__ algorithm can be
  specified instead, as seen below.
  
  +
  
  [source,java,indent=0]
  [subs="verbatim,quotes"]
  ----
  
negative.code: javadocs and the Spring test suite for further information and examples of various
  implementations.
  
  ===== TestContext
  `TestContext` encapsulates the context in which a test is executed, agnostic of the
  actual testing framework in use, and provides context management and caching support for
  the test instance for which it is responsible. The `TestContext` also delegates to a
  `SmartContextLoader` to load an `ApplicationContext` if requested.
  
  ===== TestContextManager
  `TestContextManager` is the main entry point into the __Spring TestContext Framework__,
  which manages a single `TestContext` and signals events to each registered
  `TestExecutionListener` at well-defined test execution points:
  
  * prior to any __before class__ or __before all__ methods of a particular testing framework
  * test instance post-processing
  * prior to any __before__ or __before each__ methods of a particular testing framework
  * after any __after__ or __after each__ methods of a particular testing framework
  * after any __after class__ or __after all__ methods of a particular testing framework
  
  ===== TestExecutionListener
  `TestExecutionListener` defines the API for reacting to test execution events published
  by the `TestContextManager` with which the listener is registered. See
  <<testcontext-tel-config>>.
  
  ===== Context Loaders
  `ContextLoader` is a strategy interface that was introduced in Spring 2.5 for loading an
  `ApplicationContext` for an integration test managed by the Spring TestContext Framework.
  Implement `SmartContextLoader` instead of this interface in order to provide support for
  annotated classes, active bean definition profiles, test property sources, context
  hierarchies, and `WebApplicationContext` support.
  
  `SmartContextLoader` is an extension of the `ContextLoader` interface introduced in
  Spring 3.1. The `SmartContextLoader` SPI supersedes the `ContextLoader` SPI that was
  introduced in Spring 2.5. Specifically, a `SmartContextLoader` can choose to process
  resource `locations`, annotated `classes`, or context `initializers`. Furthermore, a
  `SmartContextLoader` can set active bean definition profiles and test property sources in
  the context that it loads.
  
  Spring provides the following implementations:
  
  * `DelegatingSmartContextLoader`: one of two default loaders which delegates internally
  to an `AnnotationConfigContextLoader`, a `GenericXmlContextLoader`, or a
  `GenericGroovyXmlContextLoader` depending either on the configuration declared for the
  test class or on the presence of default locations or default configuration classes.
  Groovy support is only enabled if Groovy is on the classpath.
  * `WebDelegatingSmartContextLoader`: one of two default loaders which delegates
  internally to an `AnnotationConfigWebContextLoader`, a `GenericXmlWebContextLoader`, or a
  `GenericGroovyXmlWebContextLoader` depending either on the configuration declared for the
  test class or on the presence of default locations or default configuration classes. A
  web `ContextLoader` will only be used if `@WebAppConfiguration` is present on the test
  class. Groovy support is only enabled if Groovy is on the classpath.
  * `AnnotationConfigContextLoader`: loads a standard `ApplicationContext` from
  __annotated classes__.
  * `AnnotationConfigWebContextLoader`: loads a `WebApplicationContext` from __annotated
  classes__.
  * `GenericGroovyXmlContextLoader`: loads a standard `ApplicationContext` from __resource
  locations__ that are either Groovy scripts or XML configuration files.
  * `GenericGroovyXmlWebContextLoader`: loads a `WebApplicationContext` from __resource
  locations__ that are either Groovy scripts or XML configuration files.
  * `GenericXmlContextLoader`: loads a standard `ApplicationContext` from XML __resource
  locations__.
  * `GenericXmlWebContextLoader`: loads a `WebApplicationContext` from XML __resource
  locations__.
  * `GenericPropertiesContextLoader`: loads a standard `ApplicationContext` from Java
  Properties files.
  
  
  [[testcontext-tel-config]]
  ==== TestExecutionListener configuration
  