Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.java > #13125

Re: Mocking von Dateien in privaten Methoden möglich?

From Patrick Roemer <sangamon@netcologne.de>
Newsgroups de.comp.lang.java
Subject Re: Mocking von Dateien in privaten Methoden möglich?
Date 2017-09-01 20:39 +0200
Organization news.netcologne.de
Message-ID <ooc9h8$h58$1@newsreader4.netcologne.de> (permalink)
References <f0t28jF4rt7U1@mid.individual.net>

Show all headers | View raw


Responding to Christian H. Kuhn:
> _Problem:_ Die Originaldateien enthalten ca. 90k (DSB) bzw. 330k (FIDE)
> Spieler. Ein vollständiger Durchlauf dauert ca. 100 min. Zu Testzwecken
> wäre es wünschenswert, wenn statt der Originaldateien Testdateien mit
> einigen wenigen testrelevanten Datensätzen verwendet werden könnten.
> Natürlich ist es möglich, entsprechend vorbereitete Dateien anstelle der
> Originaldaten in den entsprechenden Ordner zu kopieren. Ich meine aber
> einmal gelernt zu haben, dass es nicht so wahnsinnig toll ist, wenn
> automatisierte Tests solche externen Abhängigkeiten haben. Besser wäre
> es, wenn stattdessen Mocks benutzt werden könnten. Die Dateien sind aber
> hardcoded und die Dateinamen, die erzeugten Paths und Reader innerhalb
> der zu testenden Klasse private bzw. lokal. Gibt es dennoch eine
> Möglichkeit, aus der Testklasse heraus Mocks zu erzeugen?
[...]
>     private static void fillDsbTables(final Connection _connection)
> throws QFdsbException {
> 
>         final LinkedList<String> dsbFiles = new
> LinkedList<String>(Arrays.asList("verbaende", "vereine", "spieler"));
>         Path file;
> 
>         for (final String dsbFile : dsbFiles) {
>             file = QFdsbStarter.home().resolve(dsbFile + ".csv");
              // ...
>         }
>     }
> [...]
> }

Das Problem scheint doch schlicht das "Singleton" QFdsbStarter.home() zu
sein. Reich den Path einfach rein, dann kannst Du für die Tests an
beliebiger Stelle entsprechende kleine Dateien anlegen - ggfs. direkt in
jimfs, dann haben die Tests überhaupt nix mit dem lokalen Dateisystem zu
schaffen.

Viele Grüße,
Patrick

Back to de.comp.lang.java | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Mocking von Dateien in privaten Methoden möglich? "Christian H. Kuhn" <qno-news@qno.de> - 2017-09-01 14:31 +0200
  Re: Mocking von Dateien in privaten Methoden möglich? Patrick Roemer <sangamon@netcologne.de> - 2017-09-01 20:39 +0200
    Re: Mocking von Dateien in privaten Methoden möglich? "Christian H. Kuhn" <qno-news@qno.de> - 2017-09-06 18:19 +0200
      Re: Mocking von Dateien in privaten Methoden möglich? Patrick Roemer <sangamon@netcologne.de> - 2017-09-06 20:46 +0200
        Re: Mocking von Dateien in privaten Methoden möglich? "Christian H. Kuhn" <qno-news@qno.de> - 2017-09-09 21:02 +0200
          Re: Mocking von Dateien in privaten Methoden möglich? Patrick Roemer <sangamon@netcologne.de> - 2017-09-10 15:03 +0200

csiph-web