2.4.18. Namenskonvention der XML-Testdaten anpassen

Checkerberry db nutzt den TestdataNameResolver, um die Namen der Testdaten-Datei zu ermitteln. In checkerberry db wird als Standard der DefaultTestdataNameResolver verwendet, der den Namen der Testdaten-Datei nach dem Muster <Klassenname>_<Methodenname>_<suffix>.xml zusammenstellt. Wenn Sie die Namen ihrer Testdaten-Dateien nach einem anderen Muster aufbauen möchten, so können Sie das Interface TestdataNameResolver erweitern und eine Instanz dieser Klasse über setTestdataNameResolver(TestdataNameResolver) in der DbConfiguration setzen. Alternativ können Sie auch das Muster für die Erstellung der Namen anpassen.

Beispiel 2.53. Konfiguration der Testdatennamen

public class ConfigurationCallback implements DbConfigurationCallback {
  public void configure(DbConfiguration configuration) {
    // Pattern der Testdatennamen ändern.
    configuration.setTestdataNameResolverPattern("{0}{1}/{2}.xml");
    // Präfix vor der Methode ändern (Default "_").
    configuration.setTestdataNameResolverMethodPrefix("/Method_");
    // Präfix vor dem Suffix z.B. 'initial' ändern (Default "_").
    configuration.setTestdataNameResolverSuffixPrefix("Testdata_");
    …
  }
}


In obigem Beispiel wird das Muster für die Bestimmung der Testdatennamen geändert. Das Muster wird vom Default („{0}{1}{2}.xml“) auf „{0}{1}/{2}.xml“ geändert, wobei {0} den vollständigen Namen der Klasse definiert z.B. de.conceptpeople.MyTest, {1} den Namen der Testmethode definiert z.B. testThis und {2} das aktuelle Suffix definiert z.B. initial. Darüber hinaus werden die Präfixe für den Testmethodennamen und das Suffix geändert. Die initialen Testdaten würden in diesem Fall somit nicht mehr unter de/conceptpeople/MyTest_testThis_initial.xml sondern unter de/conceptpeople/MyTest/Method_testThis/Testdata_initial.xml gesucht werden.