Ersetzen Sie Spring Bean in einem Kontext durch eine Scheinversion aus einem anderen Kontext
Ich schreibe einen Integrationstest, bei dem ein Anwendungskontext-XML-Code während des Startvorgangs initialisiert wird. In der Testklasse gibt es mehrere Testmethoden, die ein bestimmtes Bean 'X' verwenden (bereits in der XML definiert). Meine eigentliche Anforderung ist, Bean X nur für eine der Testmethoden zu verspotten.
Innerhalb einer Testmethode: Ich habe versucht, mithilfe von ClassPathXMLApplicationContext einen separaten Anwendungskontext nur mit dem Mock-Bean 'M' zu erstellen.
Jetzt habe ich zwei Anwendungskontexte (AC): 1. Einen, der beim Start des Testfalls erstellt wurde (der die eigentliche Bean X enthält) und 2. Einen, der mit ClassPathXMLApplicationContext innerhalb der Testmethode erstellt wurde (der die Mock-Bean M enthält).
Ich möchte die eigentliche Bean-Definition 'X' in AC: 1 durch die Mock-Bean-Definition 'M' in AC: 2 ersetzen.
Kann jemand bitte etwas Licht darauf werfen?