Frage

Ich versuche, eine Anwendung zu erstellen, von einer AppFuse Urform starten, aber ich habe einige seltsamen Probleme. Für einmal würde Ich mag eine hsqldb für automatisierte Unit-Tests und Integrationstests zu verwenden, und eine MySQL-Datenbank für meine manuellen Tests, so dass ich leicht die Daten manipulieren kann, wenn es nötig ist, so wäre es schön, automatisch Profile zu wechseln während der Testphasen. Gibt es eine Möglichkeit, das zu tun?

War es hilfreich?

Lösung

Ich bin mir nicht sicher, ob dies ist genau das, was Sie fordern, aber Sie können die folgenden Setup mehrere Filter für Maven-Projekt tun.

<filters>
  <filter>/your/path/filter-${env}.properties</filter>
</filters>

Auf diese Weise können Sie einstellen, mehrere Profile mit:

<profiles>
  <profile>
    <id>local</id>
    <properties>
      <env>local</env>
    </properties>
  </profile>
  <profile>
    <id>test</id>
    <properties>
      <env>test</env>
    </properties>
  </profile>
</profiles>

Sie können dann den Build mit der entsprechenden Eigenschaft Datei ausgeführt werden:

mvn -P <profile id>

Dies würde erfordern, Dateien mit Eigenschaft sich unter:

/your/path/filter-local.properties
/your/path/filter-test.properties

Andere Tipps

Nicht sicher, ob dies Ihnen überhaupt helfen kann, aber Sie können in den / src / test / Ressourcen-Ordnern, die außer Kraft setzen, um die in / src / main / resources alternative Ressourcendateien festlegen, wenn die Tests nur ausgeführt wird.

Ich definiere eine alternative placeholders.properties Datei hier eine andere DB-Verbindung angeben, von der Testphase verwendet werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top