Ich schreibe einen Test für eine Datei Parser-Klasse. Die Parse-Methode erhält einen Dateinamen als Parameter und muss ihn öffnen, um ihn zu analysieren (duh).Wie Maven-Eigenschaften in einem JUnit-Test abgerufen werden?
Ich habe eine Testdatei geschrieben, die ich in das test/resources-Verzeichnis innerhalb meines Projektverzeichnisses lege, und möchte diese Datei übergeben, um mein parse zu testen. Da dieses Projekt in CVS ist und von anderen manipuliert wird, kann ich den Dateipfad nicht hart codieren, also dachte ich über die maven $ {basedir} -Eigenschaft nach, um den Dateinamen in meinem Test zu erstellen. Etwas wie:
public void parseTest() {
...
sut.parse(${basedir} + "src/test/resources/testFile");
...
}
Weiß jemand wie ich das erreichen könnte?
Ich nehme die Option 2. Aber da ich den Dateinamen übergeben möchte, verwende ich die Class.getResourceAsStream (String fileName) -Methode, verwende ich Class.getResource (String fileName) .getFile(). Danke Mike – Alexandre
Das ist cool. Seien Sie sich jedoch bewusst, dass Sie, wenn Sie die Tests jemals aus einer JAR ausführen müssen (was unwahrscheinlich ist), ein merkwürdiges Verhalten zeigen können. –
Nicht sicher, wie vollständig diese Antwort ist - was ist mit "Integration Test" -Eigenschaften wie lokale DB-Adresse, die Sie in Ihrer privaten settings.xml speichern möchten? –