Ich konnte keine gute Dokumentation zur @magentoConfigFixture
Annotation in Magento 2 Integrationstests finden, also halte ich hier mal meine Zusammenfassung fest, nachdem ich den Core Code inspiziert habe (Magento 2.1.0, Magento\TestFramework\Annotation\ConfigFixture
)
Wie man @magentoConfigFixture nutzt
Standardwert 42 für Konfigurationspfad x/y/z
:
/** * @magentoConfigFixture default/x/y/z 42 */
Store-spezifischer Wert 42 für Konfigurationspfad x/y/z
im Store mit Code store1
/** * @magentoConfigFixture store1_store x/y/z 42 */
Store-spezifischer Wert 42 für Konfigurationspfad x/y/z
in aktuellem Store (also Standard-Store)
/** * @magentoConfigFixture current_store x/y/z 42 */
Das sind alle möglichen Formate. Der erste Parameter muss mit _store
enden oder weggelassen werden. Wenn er weggelassen wird, muss der Pfad mit default/
beginnen, sonst wird er ignoriert.
Implikationen
- Konfigurationswerte können nicht auf Website-Ebene gesetzt werden
- Man sollte nicht “current” als echten Store Code verwenden, sonst kann für diesen Store keine Konfigurations-Fixture genutzt werden