Möglichkeiten zum Messen des Speicherverbrauchs während der Ausführung von JUnit-Tests

8

Ich muss messen, wie viel Speicher meine JUnit-Tests verbrauchen.

  1. Der offensichtlichste (aber nicht praktikable) Weg besteht darin, JVM mit Argumenten wie "-Xms128m -Xmx512m" auszuführen und zu verfolgen, wann ich den OutOfMemory-Fehler bekomme.

  2. Die zweite Möglichkeit besteht darin, nach dem Ausführen aller Tests einen Heapdump anzufordern und dann das Memory Analyzer Tool zu verwenden. Aber es ist nicht sinnvoll, dies jedes Mal zu tun, wenn ich Tests durchführe.

Der gewünschte Weg ist beispielsweise, den Speicherverbrauch in eine Datei mit Werten wie maximale Speicherbelegung, Durchschnittsverbrauch, Anzahl der GC-Aufrufe usw. zu schreiben. Oder Sie zeichnen ein Diagramm, das zeigt, wie der Speicher verwendet wurde.

Und die Frage ist, gibt es irgendwelche Werkzeuge, Methoden oder Instrumente, um dies zu tun? Oder vielleicht sind meine Wünsche unwirklich und naiv und es gibt keine Möglichkeit, solche Daten zu sammeln?

Tests laufen unter IntelliJ Idea mit JUnit4. Ich kann jede andere Umgebung benutzen. Vielen Dank im Voraus für einen Rat!

    
sainr 13.06.2013, 15:09
quelle

1 Antwort

7

Sie können JConsole verwenden,

Ссылка

Es kommt mit Ihrem JDK

    
Juan Jose Fidalgo 13.06.2013, 15:17
quelle

Tags und Links